diff options
Diffstat (limited to 'resources/vue/courseware-tasks-app.js')
| -rw-r--r-- | resources/vue/courseware-tasks-app.js | 13 |
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), |
