Use Due Dates from all course Sessions for Dashboard
This commit is contained in:
parent
89ff4af3c8
commit
9bb3c93cfb
|
|
@ -2,7 +2,7 @@
|
|||
<div class="bg-white p-4">
|
||||
<ul v-if="true">
|
||||
<li
|
||||
v-for="dueDate in dueDates"
|
||||
v-for="dueDate in props.dueDates"
|
||||
:key="dueDate.id"
|
||||
class="flex flex-row border-b py-4"
|
||||
>
|
||||
|
|
@ -18,9 +18,9 @@
|
|||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { dueDatesTestData } from "@/components/dueDates/DueDatesTestData";
|
||||
import { formatDate } from "@/components/dueDates/DueDatesUtils.ts";
|
||||
import { useCurrentCourseSession } from "@/composables";
|
||||
import type { DueDate } from "@/types";
|
||||
import { defineProps } from "vue";
|
||||
|
||||
const props = defineProps<{
|
||||
|
|
@ -28,16 +28,13 @@ const props = defineProps<{
|
|||
default: 10;
|
||||
type: number;
|
||||
};
|
||||
dueDates: DueDate[];
|
||||
}>();
|
||||
|
||||
const courseSession = useCurrentCourseSession();
|
||||
let dueDates = []; //courseSession.value.duedates.slice(0, props.maxCount);
|
||||
const dueDates = []; //courseSession.value.duedates.slice(0, props.maxCount);
|
||||
//
|
||||
// if (dueDates.length === 0) {
|
||||
// dueDates = dueDatesTestData;
|
||||
// }
|
||||
dueDates = dueDatesTestData();
|
||||
|
||||
console.log("dueDates: ", dueDates);
|
||||
console.log("maxCount: ", props.maxCount);
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -16,7 +16,13 @@ onMounted(async () => {
|
|||
log.debug("DashboardPage mounted");
|
||||
});
|
||||
|
||||
const allDueDates = courseSessionsStore.allDueDates();
|
||||
const getNextStepLink = (courseSession: CourseSession) => {
|
||||
console.log("courseSession: ", courseSession);
|
||||
|
||||
courseSessionsStore.allCourseSessions.forEach((courseSession) => {
|
||||
console.log("duedates: ", courseSession.duedates);
|
||||
});
|
||||
return computed(() => {
|
||||
if (courseSessionsStore.hasCockpit(courseSession)) {
|
||||
return courseSession.cockpit_url;
|
||||
|
|
@ -71,7 +77,7 @@ const getNextStepLink = (courseSession: CourseSession) => {
|
|||
</div>
|
||||
<div>
|
||||
<h3 class="mb-6">Termine</h3>
|
||||
<DueDatesLongList></DueDatesLongList>
|
||||
<DueDatesLongList :due-dates="allDueDates"></DueDatesLongList>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import type {
|
|||
CourseSessionAssignmentDetails,
|
||||
CourseSessionAttendanceCourse,
|
||||
CourseSessionUser,
|
||||
DueDate,
|
||||
ExpertSessionUser,
|
||||
} from "@/types";
|
||||
import eventBus from "@/utils/eventBus";
|
||||
|
|
@ -42,7 +43,6 @@ export const useCourseSessionsStore = defineStore("courseSessions", () => {
|
|||
cs.duedates.forEach((dueDate) => {
|
||||
dueDate.start = dayjs(dueDate.start);
|
||||
dueDate.end = dayjs(dueDate.end);
|
||||
console.log(dueDate);
|
||||
});
|
||||
})
|
||||
);
|
||||
|
|
@ -195,6 +195,16 @@ export const useCourseSessionsStore = defineStore("courseSessions", () => {
|
|||
currentCourseSession.value?.documents.push(document);
|
||||
}
|
||||
|
||||
function allDueDates() {
|
||||
const allDueDatesReturn: DueDate[] = [];
|
||||
|
||||
allCourseSessions.value?.forEach((cs) => {
|
||||
allDueDatesReturn.push(...cs.duedates);
|
||||
});
|
||||
allDueDatesReturn.sort((a, b) => dayjs(a.end).diff(dayjs(b.end)));
|
||||
return allDueDatesReturn;
|
||||
}
|
||||
|
||||
async function startUpload() {
|
||||
log.debug("loadCourseSessionsData called");
|
||||
allCourseSessions.value = await itPost(`/api/core/file/start`, {
|
||||
|
|
@ -250,6 +260,7 @@ export const useCourseSessionsStore = defineStore("courseSessions", () => {
|
|||
removeDocument,
|
||||
findAttendanceCourse,
|
||||
findAssignmentDetails,
|
||||
allDueDates,
|
||||
|
||||
// use `useCurrentCourseSession` whenever possible
|
||||
currentCourseSession,
|
||||
|
|
|
|||
Loading…
Reference in New Issue