diff --git a/public/js/components/Cis/LvPlan/OtherLvPlan.js b/public/js/components/Cis/LvPlan/OtherLvPlan.js index f4948ca50..c932c5338 100644 --- a/public/js/components/Cis/LvPlan/OtherLvPlan.js +++ b/public/js/components/Cis/LvPlan/OtherLvPlan.js @@ -6,199 +6,212 @@ import ApiLvPlan from "../.././../api/factory/lvPlan.js"; import ApiOtherLvPlan from "../.././../api/factory/otherLvPlan.js"; import ApiAuthinfo from "../../../api/factory/authinfo.js"; -export const DEFAULT_MODE_LVPLAN = "Week"; +export const DEFAULT_MODE_LVPLAN_DESKTOP = "Week"; +export const DEFAULT_MODE_LVPLAN_MOBILE = "List"; export default { - name: "OtherLvPlan", - components: { - FormForm, - FormInput, - FhcCalendar, - }, - props: { - viewData: Object, - propsViewData: Object, - }, - data() { - return { - localProps: {}, - studiensemester_kurzbz: null, - studiensemester_start: null, - studiensemester_ende: null, - isOtherPersonMitarbeiter: false, - isOtherPersonStudent: false, - currentStgBezeichnung: null, - listVerband: [], - listGroup: [], - rangeIntervalFirst: null, - otherPersonData: { - fullName: "", - photo: "", - }, - }; - }, - computed: { - currentDay() { - if ( - !this.propsViewData?.focus_date || - isNaN(new Date(this.propsViewData?.focus_date)) - ) - return luxon.DateTime.now().setZone(this.viewData.timezone).toISODate(); - return this.propsViewData?.focus_date; - }, - currentMode() { - if ( - !this.propsViewData?.mode || - !["day", "week", "month"].includes( - this.propsViewData?.mode.toLowerCase(), - ) - ) - return DEFAULT_MODE_LVPLAN; - return this.propsViewData?.mode; - }, - downloadLinks() { - if ( - !this.studiensemester_start || - !this.studiensemester_ende || - !this.propsViewData.otherUid - ) - return false; + name: "OtherLvPlan", + components: { + FormForm, + FormInput, + FhcCalendar, + }, + props: { + viewData: Object, + propsViewData: Object, + }, + data() { + return { + localProps: {}, + studiensemester_kurzbz: null, + studiensemester_start: null, + studiensemester_ende: null, + isOtherPersonMitarbeiter: false, + isOtherPersonStudent: false, + currentStgBezeichnung: null, + listVerband: [], + listGroup: [], + rangeIntervalFirst: null, + otherPersonData: { + fullName: "", + photo: "", + }, + }; + }, + inject: ["isMobile"], + computed: { + currentDay() { + if ( + !this.propsViewData?.focus_date || + isNaN(new Date(this.propsViewData?.focus_date)) + ) + return luxon.DateTime.now() + .setZone(this.viewData.timezone) + .toISODate(); + return this.propsViewData?.focus_date; + }, + currentMode() { + let validModes = ["day", "month"]; + validModes.push(this.isMobile ? "list" : "week"); - const type = this.isOtherPersonStudent - ? "student" - : this.isOtherPersonMitarbeiter - ? "lektor" - : null; + const defaultMode = this.isMobile + ? DEFAULT_MODE_LVPLAN_MOBILE + : DEFAULT_MODE_LVPLAN_DESKTOP; - if (!type) return; + if ( + !this.propsViewData?.mode || + !validModes.includes(this.propsViewData?.mode.toLowerCase()) + ) + return defaultMode; + return this.propsViewData?.mode; + }, + downloadLinks() { + if ( + !this.studiensemester_start || + !this.studiensemester_ende || + !this.propsViewData.otherUid + ) + return false; - const opts = { zone: this.viewData.timezone }; - const start = luxon.DateTime.fromISO( - this.studiensemester_start, - opts, - ).toUnixInteger(); - const ende = luxon.DateTime.fromISO( - this.studiensemester_ende, - opts, - ).toUnixInteger(); + const type = this.isOtherPersonStudent + ? "student" + : this.isOtherPersonMitarbeiter + ? "lektor" + : null; - const download_link = - FHC_JS_DATA_STORAGE_OBJECT.app_root + - "cis/private/lvplan/stpl_kalender.php" + - "?type=" + - type + - "&pers_uid=" + - this.propsViewData.otherUid + - "&begin=" + - start + - "&ende=" + - ende; + if (!type) return; - return [ - { - title: "excel", - icon: "fa-solid fa-file-excel", - link: download_link + "&format=excel", - }, - { - title: "csv", - icon: "fa-solid fa-file-csv", - link: download_link + "&format=csv", - }, - { - title: "ical1", - icon: "fa-regular fa-calendar", - link: download_link + "&format=ical&version=1&target=ical", - }, - { - title: "ical2", - icon: "fa-regular fa-calendar", - link: download_link + "&format=ical&version=2&target=ical", - }, - ]; - }, - get_image_base64_src: function () { - if (!this.otherPersonData.photo?.length) { - return ""; - } - return "data:image/jpeg;base64," + this.otherPersonData.photo; - }, - }, - watch: { - "propsViewData.otherUid": { - handler() { - this.$router.go(); - }, - }, - }, - methods: { - handleChangeDate(day, newMode) { - return this.handleChangeMode(newMode, day); - }, - handleChangeMode(newMode, day) { - const mode = newMode[0].toUpperCase() + newMode.slice(1); - const focus_date = day.toISODate(); + const opts = { zone: this.viewData.timezone }; + const start = luxon.DateTime.fromISO( + this.studiensemester_start, + opts, + ).toUnixInteger(); + const ende = luxon.DateTime.fromISO( + this.studiensemester_ende, + opts, + ).toUnixInteger(); - this.$router.push({ - name: "OtherLvPlan", - params: { - mode, - focus_date, - }, - }); - }, - updateRange(rangeInterval) { - this.$api - .call( - ApiLvPlan.studiensemesterDateInterval( - rangeInterval.end.startOf("week").toISODate(), - ), - ) - .then((res) => { - this.studiensemester_kurzbz = res.data.studiensemester_kurzbz; - this.studiensemester_start = res.data.start; - this.studiensemester_ende = res.data.ende; - }); - }, - getPromiseFunc(start, end) { - return [ - this.$api.call( - ApiLvPlan.eventsPersonal( - start.toISODate(), - end.toISODate(), - this.propsViewData.otherUid, - ), - ), - this.$api.call( - ApiLvPlan.getLvPlanReservierungen( - start.toISODate(), - end.toISODate(), - this.propsViewData.otherUid, - ), - ), - ]; - }, - }, - async created() { - const authInfoResponse = await this.$api.call(ApiAuthinfo.getAuthInfo()); - const authId = authInfoResponse.data.uid; - if (authId === this.propsViewData.otherUid) { - this.$router.push({ name: "MyLvPlan" }); - } + const download_link = + FHC_JS_DATA_STORAGE_OBJECT.app_root + + "cis/private/lvplan/stpl_kalender.php" + + "?type=" + + type + + "&pers_uid=" + + this.propsViewData.otherUid + + "&begin=" + + start + + "&ende=" + + ende; - const userDataResponse = await this.$api.call( - ApiOtherLvPlan.getBasicUserAttributesForLvPlanDisplay( - this.propsViewData.otherUid, - ), - ); + return [ + { + title: "excel", + icon: "fa-solid fa-file-excel", + link: download_link + "&format=excel", + }, + { + title: "csv", + icon: "fa-solid fa-file-csv", + link: download_link + "&format=csv", + }, + { + title: "ical1", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=1&target=ical", + }, + { + title: "ical2", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=2&target=ical", + }, + ]; + }, + get_image_base64_src: function () { + if (!this.otherPersonData.photo?.length) { + return ""; + } + return "data:image/jpeg;base64," + this.otherPersonData.photo; + }, + }, + watch: { + "propsViewData.otherUid": { + handler() { + this.$router.go(); + }, + }, + }, + methods: { + handleChangeDate(day, newMode) { + return this.handleChangeMode(newMode, day); + }, + handleChangeMode(newMode, day) { + const mode = newMode[0].toUpperCase() + newMode.slice(1); + const focus_date = day.toISODate(); - const userData = userDataResponse.data; - this.isOtherPersonMitarbeiter = !!userData.is_mitarbeiter; - this.isOtherPersonStudent = !!userData.is_student; - this.otherPersonData.fullName = userData.vorname + " " + userData.nachname; - this.otherPersonData.photo = userData.foto; - }, - template: ` + this.$router.push({ + name: "OtherLvPlan", + params: { + mode, + focus_date, + }, + }); + }, + updateRange(rangeInterval) { + this.$api + .call( + ApiLvPlan.studiensemesterDateInterval( + rangeInterval.end.startOf("week").toISODate(), + ), + ) + .then((res) => { + this.studiensemester_kurzbz = + res.data.studiensemester_kurzbz; + this.studiensemester_start = res.data.start; + this.studiensemester_ende = res.data.ende; + }); + }, + getPromiseFunc(start, end) { + return [ + this.$api.call( + ApiLvPlan.eventsPersonal( + start.toISODate(), + end.toISODate(), + this.propsViewData.otherUid, + ), + ), + this.$api.call( + ApiLvPlan.getLvPlanReservierungen( + start.toISODate(), + end.toISODate(), + this.propsViewData.otherUid, + ), + ), + ]; + }, + }, + async created() { + const authInfoResponse = await this.$api.call( + ApiAuthinfo.getAuthInfo(), + ); + const authId = authInfoResponse.data.uid; + if (authId === this.propsViewData.otherUid) { + this.$router.push({ name: "MyLvPlan" }); + } + + const userDataResponse = await this.$api.call( + ApiOtherLvPlan.getBasicUserAttributesForLvPlanDisplay( + this.propsViewData.otherUid, + ), + ); + + const userData = userDataResponse.data; + this.isOtherPersonMitarbeiter = !!userData.is_mitarbeiter; + this.isOtherPersonStudent = !!userData.is_student; + this.otherPersonData.fullName = + userData.vorname + " " + userData.nachname; + this.otherPersonData.photo = userData.foto; + }, + template: `

diff --git a/public/js/components/Cis/LvPlan/Personal.js b/public/js/components/Cis/LvPlan/Personal.js index c77c6eea0..e0adc6ae7 100644 --- a/public/js/components/Cis/LvPlan/Personal.js +++ b/public/js/components/Cis/LvPlan/Personal.js @@ -1,19 +1,19 @@ import FhcCalendar from "../../Calendar/LvPlan.js"; -import ApiLvPlan from '../../../api/factory/lvPlan.js'; -import ApiAuthinfo from '../../../api/factory/authinfo.js'; +import ApiLvPlan from "../../../api/factory/lvPlan.js"; +import ApiAuthinfo from "../../../api/factory/authinfo.js"; -export const DEFAULT_MODE_LVPLAN_DESKTOP = 'Week'; -export const DEFAULT_MODE_LVPLAN_MOBILE = 'List'; +export const DEFAULT_MODE_LVPLAN_DESKTOP = "Week"; +export const DEFAULT_MODE_LVPLAN_MOBILE = "List"; export default { - name: 'LvPlanPersonal', + name: "LvPlanPersonal", components: { - FhcCalendar + FhcCalendar, }, props: { viewData: Object, // NOTE(chris): this is inherited from router-view - propsViewData: Object + propsViewData: Object, }, data() { return { @@ -22,105 +22,152 @@ export default { studiensemester_ende: null, uid: null, isMitarbeiter: false, - isStudent: false + isStudent: false, }; }, inject: ["isMobile"], - computed:{ + computed: { currentDay() { - if (!this.propsViewData?.focus_date || isNaN(new Date(this.propsViewData?.focus_date))) - return luxon.DateTime.now().setZone(this.viewData.timezone).toISODate(); + if ( + !this.propsViewData?.focus_date || + isNaN(new Date(this.propsViewData?.focus_date)) + ) + return luxon.DateTime.now() + .setZone(this.viewData.timezone) + .toISODate(); return this.propsViewData?.focus_date; }, currentMode() { - let validModes = ['day', 'month']; - validModes.push(this.isMobile ? 'list' : 'week'); + let validModes = ["day", "month"]; + validModes.push(this.isMobile ? "list" : "week"); - const defaultMode = this.isMobile ? DEFAULT_MODE_LVPLAN_MOBILE : DEFAULT_MODE_LVPLAN_DESKTOP; + const defaultMode = this.isMobile + ? DEFAULT_MODE_LVPLAN_MOBILE + : DEFAULT_MODE_LVPLAN_DESKTOP; - if (!this.propsViewData?.mode || !validModes.includes(this.propsViewData?.mode.toLowerCase())) + if ( + !this.propsViewData?.mode || + !validModes.includes(this.propsViewData?.mode.toLowerCase()) + ) return defaultMode; return this.propsViewData?.mode; }, downloadLinks() { - if (!this.studiensemester_start || !this.studiensemester_ende || !this.uid) + if ( + !this.studiensemester_start || + !this.studiensemester_ende || + !this.uid + ) return false; let type = false; - type = this.isStudent ? 'student' : type; - type = this.isMitarbeiter ? 'lektor' : type; - if (false === type) - { + type = this.isStudent ? "student" : type; + type = this.isMitarbeiter ? "lektor" : type; + if (false === type) { return; } const opts = { zone: this.viewData.timezone }; - const start = luxon.DateTime - .fromISO(this.studiensemester_start, opts) - .toUnixInteger(); - const ende = luxon.DateTime - .fromISO(this.studiensemester_ende, opts) - .toUnixInteger(); + const start = luxon.DateTime.fromISO( + this.studiensemester_start, + opts, + ).toUnixInteger(); + const ende = luxon.DateTime.fromISO( + this.studiensemester_ende, + opts, + ).toUnixInteger(); - const download_link = FHC_JS_DATA_STORAGE_OBJECT.app_root - + 'cis/private/lvplan/stpl_kalender.php' - + '?type=' + type - + '&pers_uid=' + this.uid - + '&begin=' + start - + '&ende=' + ende; + const download_link = + FHC_JS_DATA_STORAGE_OBJECT.app_root + + "cis/private/lvplan/stpl_kalender.php" + + "?type=" + + type + + "&pers_uid=" + + this.uid + + "&begin=" + + start + + "&ende=" + + ende; return [ - { title: "excel", icon: 'fa-solid fa-file-excel', link: download_link + '&format=excel' }, - { title: "csv", icon: 'fa-solid fa-file-csv', link: download_link + '&format=csv' }, - { title: "ical1", icon: 'fa-regular fa-calendar', link: download_link + '&format=ical&version=1&target=ical' }, - { title: "ical2", icon: 'fa-regular fa-calendar', link: download_link + '&format=ical&version=2&target=ical' } + { + title: "excel", + icon: "fa-solid fa-file-excel", + link: download_link + "&format=excel", + }, + { + title: "csv", + icon: "fa-solid fa-file-csv", + link: download_link + "&format=csv", + }, + { + title: "ical1", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=1&target=ical", + }, + { + title: "ical2", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=2&target=ical", + }, ]; - } + }, }, methods: { handleChangeDate(day, newMode) { return this.handleChangeMode(newMode, day); }, handleChangeMode(newMode, day) { - const mode = newMode[0].toUpperCase() + newMode.slice(1) + const mode = newMode[0].toUpperCase() + newMode.slice(1); const focus_date = day.toISODate(); - + this.$router.push({ name: "MyLvPlan", params: { mode, - focus_date - } + focus_date, + }, }); }, updateRange(rangeInterval) { this.$api - .call(ApiLvPlan.studiensemesterDateInterval( - rangeInterval.end.startOf('week').toISODate() - )) - .then(res => { - this.studiensemester_kurzbz = res.data.studiensemester_kurzbz; + .call( + ApiLvPlan.studiensemesterDateInterval( + rangeInterval.end.startOf("week").toISODate(), + ), + ) + .then((res) => { + this.studiensemester_kurzbz = + res.data.studiensemester_kurzbz; this.studiensemester_start = res.data.start; this.studiensemester_ende = res.data.ende; }); }, getPromiseFunc(start, end) { return [ - this.$api.call(ApiLvPlan.eventsPersonal(start.toISODate(), end.toISODate())), - this.$api.call(ApiLvPlan.getLvPlanReservierungen(start.toISODate(), end.toISODate())) + this.$api.call( + ApiLvPlan.eventsPersonal( + start.toISODate(), + end.toISODate(), + ), + ), + this.$api.call( + ApiLvPlan.getLvPlanReservierungen( + start.toISODate(), + end.toISODate(), + ), + ), ]; - } + }, }, created() { - this.$api - .call(ApiAuthinfo.getAuthInfo()) - .then(res => { - this.uid = res.data.uid; - this.isMitarbeiter = res.data.isMitarbeiter; - this.isStudent = res.data.isStudent; - }); + this.$api.call(ApiAuthinfo.getAuthInfo()).then((res) => { + this.uid = res.data.uid; + this.isMitarbeiter = res.data.isMitarbeiter; + this.isStudent = res.data.isStudent; + }); }, - template: /*html*/` + template: /*html*/ `

{{ $p.t('lehre/stundenplan') }} @@ -158,5 +205,5 @@ export default {

-

` + `, }; diff --git a/public/js/components/Cis/LvPlan/StgOrg.js b/public/js/components/Cis/LvPlan/StgOrg.js index f6bc51c12..08bec3674 100644 --- a/public/js/components/Cis/LvPlan/StgOrg.js +++ b/public/js/components/Cis/LvPlan/StgOrg.js @@ -1,14 +1,15 @@ -import FormForm from '../../Form/Form.js'; -import FormInput from '../../Form/Input.js'; +import FormForm from "../../Form/Form.js"; +import FormInput from "../../Form/Input.js"; import FhcCalendar from "../../Calendar/LvPlan.js"; -import ApiLvPlan from '../.././../api/factory/lvPlan.js'; -import ApiAuthinfo from '../../../api/factory/authinfo.js'; +import ApiLvPlan from "../.././../api/factory/lvPlan.js"; +import ApiAuthinfo from "../../../api/factory/authinfo.js"; -export const DEFAULT_MODE_LVPLAN = 'Week'; +export const DEFAULT_MODE_LVPLAN_DESKTOP = "Week"; +export const DEFAULT_MODE_LVPLAN_MOBILE = "List"; export default { - name: 'LvPlanStgOrg', + name: "LvPlanStgOrg", components: { FormForm, FormInput, @@ -16,7 +17,7 @@ export default { }, props: { viewData: Object, - propsViewData: Object + propsViewData: Object, }, data() { return { @@ -28,85 +29,134 @@ export default { isMitarbeiter: false, isStudent: false, currentStgBezeichnung: null, - formData: { + formData: { stgkz: null, sem: null, verband: null, gruppe: null, }, listStg: [], - listSem: [1,2,3,4,5,6,7,8,9,10], + listSem: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], listVerband: [], listGroup: [], - rangeIntervalFirst: null + rangeIntervalFirst: null, }; }, + inject: ["isMobile"], computed: { - maxSemester(){ + maxSemester() { const currentStg = this.listStg.find( - item => item.studiengang_kz === this.formData.stgkz + (item) => item.studiengang_kz === this.formData.stgkz, ); return currentStg?.max_semester; }, currentDay() { - if (!this.propsViewData?.focus_date || isNaN(new Date(this.propsViewData?.focus_date))) - return luxon.DateTime.now().setZone(this.viewData.timezone).toISODate(); + if ( + !this.propsViewData?.focus_date || + isNaN(new Date(this.propsViewData?.focus_date)) + ) + return luxon.DateTime.now() + .setZone(this.viewData.timezone) + .toISODate(); return this.propsViewData?.focus_date; }, currentMode() { - if (!this.propsViewData?.mode || !['day', 'week', 'month'].includes(this.propsViewData?.mode.toLowerCase())) - return DEFAULT_MODE_LVPLAN; + let validModes = ["day", "month"]; + validModes.push(this.isMobile ? "list" : "week"); + + const defaultMode = this.isMobile + ? DEFAULT_MODE_LVPLAN_MOBILE + : DEFAULT_MODE_LVPLAN_DESKTOP; + + if ( + !this.propsViewData?.mode || + !validModes.includes(this.propsViewData?.mode.toLowerCase()) + ) + return defaultMode; return this.propsViewData?.mode; }, downloadLinks() { - if (!this.studiensemester_start || !this.studiensemester_ende || !this.uid) + if ( + !this.studiensemester_start || + !this.studiensemester_ende || + !this.uid + ) return false; let type = false; - type = this.isStudent ? 'student' : type; - type = this.isMitarbeiter ? 'lektor' : type; - if (false === type) - { + type = this.isStudent ? "student" : type; + type = this.isMitarbeiter ? "lektor" : type; + if (false === type) { return; } const opts = { zone: this.viewData.timezone }; - const start = luxon.DateTime - .fromISO(this.studiensemester_start, opts) - .toUnixInteger(); - const ende = luxon.DateTime - .fromISO(this.studiensemester_ende, opts) - .toUnixInteger(); + const start = luxon.DateTime.fromISO( + this.studiensemester_start, + opts, + ).toUnixInteger(); + const ende = luxon.DateTime.fromISO( + this.studiensemester_ende, + opts, + ).toUnixInteger(); - const download_link = FHC_JS_DATA_STORAGE_OBJECT.app_root - + 'cis/private/lvplan/stpl_kalender.php' - + '?type=' + type - + '&pers_uid=' + this.uid - + '&begin=' + start - + '&ende=' + ende; + const download_link = + FHC_JS_DATA_STORAGE_OBJECT.app_root + + "cis/private/lvplan/stpl_kalender.php" + + "?type=" + + type + + "&pers_uid=" + + this.uid + + "&begin=" + + start + + "&ende=" + + ende; return [ - { title: "excel", icon: 'fa-solid fa-file-excel', link: download_link + '&format=excel' }, - { title: "csv", icon: 'fa-solid fa-file-csv', link: download_link + '&format=csv' }, - { title: "ical1", icon: 'fa-regular fa-calendar', link: download_link + '&format=ical&version=1&target=ical' }, - { title: "ical2", icon: 'fa-regular fa-calendar', link: download_link + '&format=ical&version=2&target=ical' } + { + title: "excel", + icon: "fa-solid fa-file-excel", + link: download_link + "&format=excel", + }, + { + title: "csv", + icon: "fa-solid fa-file-csv", + link: download_link + "&format=csv", + }, + { + title: "ical1", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=1&target=ical", + }, + { + title: "ical2", + icon: "fa-regular fa-calendar", + link: download_link + "&format=ical&version=2&target=ical", + }, ]; - } + }, }, methods: { - loadLvPlan(){ - if(!this.formData.stgkz){ - this.$fhcAlert.alertError(this.$p.t('LvPlan', 'chooseStg')); + loadLvPlan() { + if (!this.formData.stgkz) { + this.$fhcAlert.alertError(this.$p.t("LvPlan", "chooseStg")); return; } - if(!this.formData.sem && (this.formData.verband || this.formData.gruppe)){ - this.$fhcAlert.alertError(this.$p.t('LvPlan', 'error_SemMissing')); + if ( + !this.formData.sem && + (this.formData.verband || this.formData.gruppe) + ) { + this.$fhcAlert.alertError( + this.$p.t("LvPlan", "error_SemMissing"), + ); return; } - if(!this.formData.verband && this.formData.gruppe){ - this.$fhcAlert.alertError(this.$p.t('LvPlan', 'error_VerbandMissing')); + if (!this.formData.verband && this.formData.gruppe) { + this.$fhcAlert.alertError( + this.$p.t("LvPlan", "error_VerbandMissing"), + ); return; } @@ -120,18 +170,17 @@ export default { }; //ensure logic: no value after a null value in route - if(params.sem == null) - { + if (params.sem == null) { params.verband = null; params.gruppe = null; } - if(params.verband == null) { + if (params.verband == null) { params.gruppe = null; } //delete all null values to avoid null in router Object.keys(params).forEach( - key => params[key] == null && delete params[key] + (key) => params[key] == null && delete params[key], ); this.$router.push({ @@ -139,37 +188,60 @@ export default { params, }); - this.$refs['calendar'].resetEventLoader(); + this.$refs["calendar"].resetEventLoader(); }, - loadListSem(){ - this.listSem = [...Array(this.maxSemester).keys()].map(i => i + 1); + loadListSem() { + this.listSem = [...Array(this.maxSemester).keys()].map( + (i) => i + 1, + ); }, - loadListVerband(){ + loadListVerband() { this.$api - .call(ApiLvPlan.getLehrverband(this.formData.stgkz, this.formData.semester, this.formData.verband)) - .then(result => { + .call( + ApiLvPlan.getLehrverband( + this.formData.stgkz, + this.formData.semester, + this.formData.verband, + ), + ) + .then((result) => { const data = result.data; - const mappedData = data.map(item => item.verband); - this.listVerband = [...new Set(mappedData.filter(v => - v !== null && - v !== undefined && - String(v).trim() !== "" - ))] - .sort(); + const mappedData = data.map((item) => item.verband); + this.listVerband = [ + ...new Set( + mappedData.filter( + (v) => + v !== null && + v !== undefined && + String(v).trim() !== "", + ), + ), + ].sort(); }) .catch(this.$fhcAlert.handleSystemError); }, - loadListGroup(){ + loadListGroup() { this.$api - .call(ApiLvPlan.getGruppe(this.formData.stgkz, this.formData.semester, this.formData.verband)) - .then(result => { + .call( + ApiLvPlan.getGruppe( + this.formData.stgkz, + this.formData.semester, + this.formData.verband, + ), + ) + .then((result) => { const data = result.data; - const mappedData = data.map(item => item.gruppe); - this.listGroup = [...new Set(mappedData.filter(v => - v !== null && - v !== undefined && - String(v).trim() !== ""))] - .sort(); + const mappedData = data.map((item) => item.gruppe); + this.listGroup = [ + ...new Set( + mappedData.filter( + (v) => + v !== null && + v !== undefined && + String(v).trim() !== "", + ), + ), + ].sort(); }) .catch(this.$fhcAlert.handleSystemError); }, @@ -194,42 +266,60 @@ export default { }, updateRange(rangeInterval) { this.$api - .call(ApiLvPlan.studiensemesterDateInterval( - rangeInterval.end.startOf('week').toISODate() - )) - .then(res => { - this.studiensemester_kurzbz = res.data.studiensemester_kurzbz; + .call( + ApiLvPlan.studiensemesterDateInterval( + rangeInterval.end.startOf("week").toISODate(), + ), + ) + .then((res) => { + this.studiensemester_kurzbz = + res.data.studiensemester_kurzbz; this.studiensemester_start = res.data.start; this.studiensemester_ende = res.data.ende; }); }, getPromiseFunc(start, end) { return [ - this.$api.call(ApiLvPlan.eventsStgOrg(start, end, this.formData.stgkz, this.formData.sem, this.formData.verband, this.formData.gruppe)) + this.$api.call( + ApiLvPlan.eventsStgOrg( + start, + end, + this.formData.stgkz, + this.formData.sem, + this.formData.verband, + this.formData.gruppe, + ), + ), ]; }, }, - created(){ - this.$api - .call(ApiAuthinfo.getAuthInfo()) - .then(res => { - this.uid = res.data.uid; - this.isMitarbeiter = res.data.isMitarbeiter; - this.isStudent = res.data.isStudent; - }); + created() { + this.$api.call(ApiAuthinfo.getAuthInfo()).then((res) => { + this.uid = res.data.uid; + this.isMitarbeiter = res.data.isMitarbeiter; + this.isStudent = res.data.isStudent; + }); this.$api .call(ApiLvPlan.getStudiengaenge()) - .then(result => { - this. listStg = result.data; + .then((result) => { + this.listStg = result.data; }) .catch(this.$fhcAlert.handleSystemError); - if(this.propsViewData) { - this.formData.stgkz = this.propsViewData.stgkz ? this.propsViewData.stgkz: null; - this.formData.sem = this.propsViewData.sem ? this.propsViewData.sem: null; - this.formData.verband = this.propsViewData.verband ? this.propsViewData.verband: null; - this.formData.gruppe = this.propsViewData.gruppe ? this.propsViewData.gruppe: null; + if (this.propsViewData) { + this.formData.stgkz = this.propsViewData.stgkz + ? this.propsViewData.stgkz + : null; + this.formData.sem = this.propsViewData.sem + ? this.propsViewData.sem + : null; + this.formData.verband = this.propsViewData.verband + ? this.propsViewData.verband + : null; + this.formData.gruppe = this.propsViewData.gruppe + ? this.propsViewData.gruppe + : null; } }, template: ` @@ -331,6 +421,4 @@ export default { `, - - -}; \ No newline at end of file +};