diff --git a/src/lib/components/Course/components/Settings/index.svelte b/src/lib/components/Course/components/Settings/index.svelte index f389cd3b..dadd26c1 100644 --- a/src/lib/components/Course/components/Settings/index.svelte +++ b/src/lib/components/Course/components/Settings/index.svelte @@ -11,6 +11,7 @@ import { VARIANTS } from '$lib/components/PrimaryButton/constants'; import { settings } from './store'; import { course } from '$lib/components/Course/store'; + import type { Course } from '$lib/utils/types'; import { updateCourse, deleteCourse } from '$lib/utils/services/courses'; import { currentOrgPath } from '$lib/utils/store/org'; import { isObject } from '$lib/utils/functions/isObject'; @@ -154,16 +155,16 @@ isSaving = false; }; - function setDefault(course) { + function setDefault(course: Course) { if (course && Object.keys(course).length) { $settings = { course_title: course.title, course_description: course.description, - logo: course.logo, + logo: course.logo || '', tabs: course.metadata.lessonTabsOrder || $settings.tabs, - grading: course.metadata.grading, - lesson_download: course.metadata.lessonDownload, - is_published: course.is_published, + grading: !!course.metadata.grading, + lesson_download: !!course.metadata.lessonDownload, + is_published: !!course.is_published, allow_new_students: course.metadata.allowNewStudent }; } diff --git a/src/routes/courses/[id]/attendance/+page.svelte b/src/routes/courses/[id]/attendance/+page.svelte index 69079f42..c76bf666 100644 --- a/src/routes/courses/[id]/attendance/+page.svelte +++ b/src/routes/courses/[id]/attendance/+page.svelte @@ -24,6 +24,7 @@ import { attendance } from '$lib/utils/store/attendance.js'; import { profile } from '$lib/utils/store/user'; import type { GroupPerson, Lesson } from '$lib/utils/types/index'; + import { browser } from '$app/environment'; export let data; @@ -120,18 +121,20 @@ ); } - onMount(async () => { - if ($course.id) { + async function firstRender(courseId: string) { + if (courseId) { if (!Object.keys($attendance).length) { setAttendance($course); } return; } - }); + } $: students = isStudent ? $group.people.filter((person) => !!person.profile && person.profile.id === $profile.id) : $group.people.filter((person) => !!person.profile && person.role_id === ROLE.STUDENT); + + $: browser && $course.id && firstRender($course.id); diff --git a/src/routes/courses/[id]/marks/+page.svelte b/src/routes/courses/[id]/marks/+page.svelte index 20b6c2f7..436c1b4d 100644 --- a/src/routes/courses/[id]/marks/+page.svelte +++ b/src/routes/courses/[id]/marks/+page.svelte @@ -1,5 +1,4 @@ - diff --git a/src/routes/courses/[id]/submissions/+page.svelte b/src/routes/courses/[id]/submissions/+page.svelte index c1b4450a..76677da5 100644 --- a/src/routes/courses/[id]/submissions/+page.svelte +++ b/src/routes/courses/[id]/submissions/+page.svelte @@ -1,5 +1,4 @@