From db61e7f9277f2eeaf5ebc8cbcb1f7d7a2bf0f60f Mon Sep 17 00:00:00 2001 From: Ron Lucke <lucke@elan-ev.de> Date: Thu, 27 Apr 2023 12:15:07 +0000 Subject: [PATCH] fix #2584 Closes #2584 Merge request studip/studip!1743 --- .../courseware/CoursewareDashboardStudents.vue | 2 +- .../courseware/CoursewareDashboardTasks.vue | 2 +- resources/vue/mixins/courseware/task-helper.js | 15 +++++++-------- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/resources/vue/components/courseware/CoursewareDashboardStudents.vue b/resources/vue/components/courseware/CoursewareDashboardStudents.vue index d03ed986d69..5878705789d 100644 --- a/resources/vue/components/courseware/CoursewareDashboardStudents.vue +++ b/resources/vue/components/courseware/CoursewareDashboardStudents.vue @@ -57,7 +57,7 @@ </span> </td> <td class="responsive-hidden"> - <a v-if="task.attributes.submitted" :href="getLinkToElement(element.id)"> + <a v-if="task.attributes.submitted" :href="getLinkToElement(element)"> {{ element.attributes.title }} </a> <span v-else>{{ element.attributes.title }}</span> diff --git a/resources/vue/components/courseware/CoursewareDashboardTasks.vue b/resources/vue/components/courseware/CoursewareDashboardTasks.vue index e1329baebb6..6535272b4b4 100644 --- a/resources/vue/components/courseware/CoursewareDashboardTasks.vue +++ b/resources/vue/components/courseware/CoursewareDashboardTasks.vue @@ -37,7 +37,7 @@ {{ taskGroup.attributes.title }} </td> <td> - <a :href="getLinkToElement(element.id)">{{ element.attributes.title }}</a> + <a :href="getLinkToElement(element)">{{ element.attributes.title }}</a> </td> <td>{{ task.attributes?.progress?.toFixed(2) || '-'}}%</td> <td>{{ getReadableDate(task.attributes['submission-date']) }}</td> diff --git a/resources/vue/mixins/courseware/task-helper.js b/resources/vue/mixins/courseware/task-helper.js index ecf4ff30492..9f9fdb37cdc 100644 --- a/resources/vue/mixins/courseware/task-helper.js +++ b/resources/vue/mixins/courseware/task-helper.js @@ -50,14 +50,13 @@ export default { return status; }, - getLinkToElement(elementId) { - return ( - STUDIP.URLHelper.base_url + - 'dispatch.php/course/courseware/?cid=' + - STUDIP.URLHelper.parameters.cid + - '#/structural_element/' + - elementId - ); + getLinkToElement(element) { + const unitId = element.relationships?.unit?.data?.id; + if (!unitId) { + return ''; + } + + return `${STUDIP.URLHelper.base_url}dispatch.php/course/courseware/courseware/${unitId}?cid=${STUDIP.URLHelper.parameters.cid}#/structural_element/${element.id}`; }, getReadableDate(date) { return new Date(date).toLocaleDateString(); -- GitLab