Skip to content
Snippets Groups Projects

Resolve "Frontend for Models"

Merged Julian requested to merge 1-frontend-for-models into master
Compare and Show latest version
8 files
+ 146
46
Compare changes
  • Side-by-side
  • Inline
Files
8
@@ -21,7 +21,9 @@ import TimeGridField from "../validity_range/TimeGridField.vue";
>
<template #breakSlot="{ item }">
<div class="body-1">{{ formatBreakSlotItem(item.breakSlot) }}</div>
<div class="caption">{{ formatTimeGridItem(item.breakSlot.timeGrid) }}</div>
<div class="caption">
{{ formatTimeGridItem(item.breakSlot.timeGrid) }}
</div>
</template>
<!-- eslint-disable-next-line vue/valid-v-slot -->
<template #breakSlot.field="{ attrs, on }">
@@ -37,8 +39,12 @@ import TimeGridField from "../validity_range/TimeGridField.vue";
>
<template v-slot:item="data">
<v-list-item-content>
<v-list-item-title>{{ formatBreakSlotItem(data.item) }}</v-list-item-title>
<v-list-item-subtitle>{{ formatTimeGridItem(data.item.timeGrid) }}</v-list-item-subtitle>
<v-list-item-title>{{
formatBreakSlotItem(data.item)
}}</v-list-item-title>
<v-list-item-subtitle>{{
formatTimeGridItem(data.item.timeGrid)
}}</v-list-item-subtitle>
</v-list-item-content>
</template>
</v-autocomplete>
@@ -46,7 +52,9 @@ import TimeGridField from "../validity_range/TimeGridField.vue";
</template>
<template #rooms="{ item }">
<v-chip v-for="room in item.rooms" dense class="mx-1">{{ room.shortName }}</v-chip>
<v-chip v-for="room in item.rooms" dense class="mx-1">{{
room.shortName
}}</v-chip>
</template>
<!-- eslint-disable-next-line vue/valid-v-slot -->
<template #rooms.field="{ attrs, on }">
@@ -65,7 +73,9 @@ import TimeGridField from "../validity_range/TimeGridField.vue";
</template>
<template #teachers="{ item }">
<v-chip v-for="teacher in item.teachers" dense class="mx-1">{{ teacher.fullName }}</v-chip>
<v-chip v-for="teacher in item.teachers" dense class="mx-1">{{
teacher.fullName
}}</v-chip>
</template>
<!-- eslint-disable-next-line vue/valid-v-slot -->
<template #teachers.field="{ attrs, on }">
@@ -128,7 +138,7 @@ export default {
text: this.$t("lesrooster.supervision.teachers"),
value: "teachers",
},
],
],
i18nKey: "lesrooster.supervision",
createItemI18nKey: "lesrooster.supervision.create_supervision",
gqlQuery: supervisions,
@@ -160,12 +170,22 @@ export default {
methods: {
formatTimeGridItem(item) {
if (item.group === null) {
return this.$t("lesrooster.validity_range.time_grid.repr.generic", item.validityRange);
return this.$t(
"lesrooster.validity_range.time_grid.repr.generic",
item.validityRange
);
}
return this.$t("lesrooster.validity_range.time_grid.repr.default", [item.validityRange.name, item.group.name]);
return this.$t("lesrooster.validity_range.time_grid.repr.default", [
item.validityRange.name,
item.group.name,
]);
},
formatBreakSlotItem(item) {
return this.$t("lesrooster.break.repr.weekday_short", { weekday: this.$t("weekdays." + item.weekday), timeStart: item.timeStart, timeEnd: item.timeEnd })
return this.$t("lesrooster.break.repr.weekday_short", {
weekday: this.$t("weekdays." + item.weekday),
timeStart: item.timeStart,
timeEnd: item.timeEnd,
});
},
getRRule(timeGrid) {
const rule = new RRule({
Loading