aboutsummaryrefslogtreecommitdiff
path: root/resources
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2025-10-16 16:20:32 +0200
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2025-10-16 16:20:32 +0200
commit14f555e40afe803558c1a1ccf81aeb4e135f1274 (patch)
tree127519b159eecd07ded902b032616469ac3a6713 /resources
parent439830f48f6d52db9e2416e636da0e9a76840d0b (diff)
add option to always display sem number on my courses, fixes #5957
Closes #5957 Merge request studip/studip!4555
Diffstat (limited to 'resources')
-rw-r--r--resources/vue/components/my-courses/TableView.vue8
-rw-r--r--resources/vue/mixins/MyCoursesMixin.js14
2 files changed, 13 insertions, 9 deletions
diff --git a/resources/vue/components/my-courses/TableView.vue b/resources/vue/components/my-courses/TableView.vue
index f0802d5..f8ffa85 100644
--- a/resources/vue/components/my-courses/TableView.vue
+++ b/resources/vue/components/my-courses/TableView.vue
@@ -5,7 +5,7 @@
<colgroup>
<col style="width: 7px">
<col style="width: 25px">
- <col style="width: 70px" v-if="getConfig('sem_number') && !responsiveDisplay">
+ <col style="width: 70px" v-if="displaySemNumber">
<col>
<col v-if="!responsiveDisplay" :style="{width: (2 * 5 + numberOfNavElements * (iconSize + 2 * 3 + 3) - 3) + 'px'}">
<col v-if="!responsiveDisplay" style="width: 24px">
@@ -18,7 +18,7 @@
</span>
</th>
<th></th>
- <th v-if="getConfig('sem_number') && !responsiveDisplay" :class="getOrderClasses('number')">
+ <th v-if="displaySemNumber" :class="getOrderClasses('number')">
<a href="#" @click.prevent="changeOrder('number')">
{{ $gettext('Nr.') }}
</a>
@@ -35,7 +35,7 @@
<tbody v-for="subgroup in group.data" :key="subgroup.id" :class="{collapsed: !isGroupOpen(subgroup)}">
<tr class="header-row" v-if="subgroup.label !== false">
<th style="white-space: nowrap; text-align: left"></th>
- <th class="toggle-indicator" :colspan="(getConfig('sem_number') && !responsiveDisplay) ? 3 : 2">
+ <th class="toggle-indicator" :colspan="displaySemNumber ? 3 : 2">
<a href="#" @click.prevent.stop="toggleOpenGroup(subgroup)">{{ subgroup.label }}</a>
</th>
<th v-if="!responsiveDisplay" class="dont-hide" colspan="2"></th>
@@ -52,7 +52,7 @@
<td :class="{'subcourse-indented': isChild(course)}">
<span :style="{backgroundImage: `url(${course.avatar}`}" class="my-courses-avatar course-avatar-small" :title="course.name" alt=""></span>
</td>
- <td v-if="getConfig('sem_number') && !responsiveDisplay" :class="{'subcourse-indented': isChild(course)}">
+ <td v-if="displaySemNumber" :class="{'subcourse-indented': isChild(course)}">
{{ course.number }}
</td>
<td :class="{'subcourse-indented': isChild(course)}">
diff --git a/resources/vue/mixins/MyCoursesMixin.js b/resources/vue/mixins/MyCoursesMixin.js
index 332bcdc..5d9f811 100644
--- a/resources/vue/mixins/MyCoursesMixin.js
+++ b/resources/vue/mixins/MyCoursesMixin.js
@@ -16,10 +16,7 @@ function createMixin(minimal = false) {
let name = course.name;
// Include sem number
- if (
- this.config?.sem_number
- && !this.responsiveDisplay
- ) {
+ if (this.displaySemNumber) {
name = `${course.number} ${name}`;
}
@@ -28,7 +25,7 @@ function createMixin(minimal = false) {
name = `${name} ${$gettext('[Vertretung]')}`;
}
- return name;
+ return name.trim();
},
getCourseURL(course) {
return this.urlFor('dispatch.php/course/go', {to: course.id}, true);
@@ -45,6 +42,13 @@ function createMixin(minimal = false) {
computed: {
csrf() {
return STUDIP.CSRF_TOKEN;
+ },
+ displaySemNumber() {
+ return this.config?.sem_number_always
+ || (
+ this.config?.sem_number
+ && !this.responsiveDisplay
+ );
}
},
created() {