aboutsummaryrefslogtreecommitdiff
path: root/resources/vue/courseware-tasks-app.js
diff options
context:
space:
mode:
authorRon Lucke <lucke@elan-ev.de>2023-12-14 10:13:46 +0100
committerRon Lucke <lucke@elan-ev.de>2024-07-05 14:06:48 +0000
commit8f8a28dcb03d859d409b31932aa084517124f408 (patch)
treeee8c7a8df9e7d8504025fa6d4990b3dfbf91ec90 /resources/vue/courseware-tasks-app.js
parent6dc273174983e648d602d4ad49d5667550bded9c (diff)
fix #889biest-889
Diffstat (limited to 'resources/vue/courseware-tasks-app.js')
-rw-r--r--resources/vue/courseware-tasks-app.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/resources/vue/courseware-tasks-app.js b/resources/vue/courseware-tasks-app.js
index 9c01b71..a5091a2 100644
--- a/resources/vue/courseware-tasks-app.js
+++ b/resources/vue/courseware-tasks-app.js
@@ -92,6 +92,7 @@ const mountApp = async (STUDIP, createApp, element) => {
});
let entry_id = null;
let entry_type = null;
+ let course_perms = null;
let elem;
if ((elem = document.getElementById(element.substring(1))) !== undefined) {
@@ -103,6 +104,10 @@ const mountApp = async (STUDIP, createApp, element) => {
if (elem.attributes['entry-id'] !== undefined) {
entry_id = elem.attributes['entry-id'].value;
}
+
+ if (elem.attributes['course-perms'] !== undefined) {
+ course_perms = JSON.parse(elem.attributes['course-perms'].value);
+ }
}
}
@@ -115,6 +120,14 @@ const mountApp = async (STUDIP, createApp, element) => {
});
await store.dispatch('loadTeacherStatus', STUDIP.USER_ID);
await store.dispatch('tasks/loadTasksOfCourse', { cid: entry_id });
+ store.dispatch('setCoursePerms', course_perms);
+ store.dispatch('setUserIsTeacher', course_perms.tutor);
+ store.dispatch('courseware-tasks/loadAll', {
+ options: {
+ 'filter[cid]': entry_id,
+ include: 'solver, structural-element, task-feedback, task-group, task-group.lecturer',
+ },
+ });
const app = createApp({
render: (h) => h(RouterView),