diff options
| author | Ron Lucke <lucke@elan-ev.de> | 2023-04-27 12:15:07 +0000 |
|---|---|---|
| committer | David Siegfried <david.siegfried@uni-vechta.de> | 2023-04-27 12:15:07 +0000 |
| commit | db61e7f9277f2eeaf5ebc8cbcb1f7d7a2bf0f60f (patch) | |
| tree | 1cb2fccae4bfdb3df38b8c1691be2770ff181da5 | |
| parent | 0af369c69049c13f5828ad1df17d0a2b36a153e9 (diff) | |
fix #2584
Closes #2584
Merge request studip/studip!1743
3 files changed, 9 insertions, 10 deletions
diff --git a/resources/vue/components/courseware/CoursewareDashboardStudents.vue b/resources/vue/components/courseware/CoursewareDashboardStudents.vue index d03ed98..5878705 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 e1329ba..6535272 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 ecf4ff3..9f9fdb3 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(); |
