Open Assignment evaluation on last step when not in progress
This commit is contained in:
parent
00a36b52c8
commit
b4638e372f
|
|
@ -88,11 +88,11 @@ const performanceCriteriaStatusCount = computed(() => {
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4 lg:mt-0">
|
<div class="mt-4 lg:mt-0">
|
||||||
<span class="text-bold">
|
<span class="text-bold">
|
||||||
{{ assignmentsMaxEvaluationPoints(certificate.assignments) }}
|
{{ assignmentsUserPoints(certificate.assignments) }}
|
||||||
</span>
|
</span>
|
||||||
{{
|
{{
|
||||||
$t("assignment.von x Punkten", {
|
$t("assignment.von x Punkten", {
|
||||||
x: assignmentsUserPoints(certificate.assignments),
|
x: assignmentsMaxEvaluationPoints(certificate.assignments),
|
||||||
})
|
})
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -181,7 +181,7 @@ function checkboxIconUncheckedTailwindClass(lc: LearningContent) {
|
||||||
"
|
"
|
||||||
@toggle="toggleCompleted(learningContent)"
|
@toggle="toggleCompleted(learningContent)"
|
||||||
@click="
|
@click="
|
||||||
(event) => {
|
(event: MouseEvent) => {
|
||||||
// when disabled open the learning content directly
|
// when disabled open the learning content directly
|
||||||
if (!learningContent.can_user_self_toggle_course_completion) {
|
if (!learningContent.can_user_self_toggle_course_completion) {
|
||||||
circleStore.openLearningContent(learningContent);
|
circleStore.openLearningContent(learningContent);
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ import { useMutation, useQuery } from "@urql/vue";
|
||||||
import { useRouteQuery } from "@vueuse/router";
|
import { useRouteQuery } from "@vueuse/router";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as log from "loglevel";
|
import * as log from "loglevel";
|
||||||
import { computed, onMounted, reactive } from "vue";
|
import { computed, onMounted, reactive, ref, watchEffect } from "vue";
|
||||||
import { useTranslation } from "i18next-vue";
|
import { useTranslation } from "i18next-vue";
|
||||||
import { bustItGetCache } from "@/fetchHelpers";
|
import { bustItGetCache } from "@/fetchHelpers";
|
||||||
import { learningContentTypeData } from "@/utils/typeMaps";
|
import { learningContentTypeData } from "@/utils/typeMaps";
|
||||||
|
|
@ -75,6 +75,28 @@ const completionStatus = computed(() => {
|
||||||
return assignmentCompletion.value?.completion_status ?? "IN_PROGRESS";
|
return assignmentCompletion.value?.completion_status ?? "IN_PROGRESS";
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const hasRunUseQueryPostFetch = ref(false);
|
||||||
|
watchEffect(() => {
|
||||||
|
if (
|
||||||
|
queryResult.data.value &&
|
||||||
|
!queryResult.error.value &&
|
||||||
|
!hasRunUseQueryPostFetch.value
|
||||||
|
) {
|
||||||
|
// workaround for setting step to last when not IN_PROGRESS anymore
|
||||||
|
hasRunUseQueryPostFetch.value = true;
|
||||||
|
try {
|
||||||
|
if (
|
||||||
|
stepIndex.value === 0 &&
|
||||||
|
(completionStatus.value ?? "IN_PROGRESS") !== "IN_PROGRESS"
|
||||||
|
) {
|
||||||
|
stepIndex.value = numPages.value - 1;
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
log.error(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
log.debug(
|
log.debug(
|
||||||
"AssignmentView mounted",
|
"AssignmentView mounted",
|
||||||
|
|
@ -90,17 +112,6 @@ onMounted(async () => {
|
||||||
// have reactivity problem accessing it.
|
// have reactivity problem accessing it.
|
||||||
await initUpsertAssignmentCompletion();
|
await initUpsertAssignmentCompletion();
|
||||||
queryResult.resume();
|
queryResult.resume();
|
||||||
|
|
||||||
try {
|
|
||||||
if (
|
|
||||||
stepIndex.value === 0 &&
|
|
||||||
(completionStatus.value ?? "IN_PROGRESS") !== "IN_PROGRESS"
|
|
||||||
) {
|
|
||||||
stepIndex.value = numPages.value - 1;
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
log.error(error);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const numTasks = computed(() => assignment.value?.tasks?.length ?? 0);
|
const numTasks = computed(() => assignment.value?.tasks?.length ?? 0);
|
||||||
|
|
|
||||||
|
|
@ -395,7 +395,7 @@ export interface PerformanceCriteria extends BaseCourseWagtailPage {
|
||||||
readonly competence_id: string;
|
readonly competence_id: string;
|
||||||
readonly circle: CircleLight;
|
readonly circle: CircleLight;
|
||||||
readonly course_category: CourseCategory;
|
readonly course_category: CourseCategory;
|
||||||
readonly learning_unit: BaseCourseWagtailPage;
|
readonly learning_unit: BaseCourseWagtailPage & { evaluate_url: string };
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CompetencePage extends BaseCourseWagtailPage {
|
export interface CompetencePage extends BaseCourseWagtailPage {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue