@@ -176,7 +231,7 @@ type LearninContentWithCompetenceCertificate =
{{
$t("circlePage.Dieser Inhalt gehört zu x", {
@@ -221,47 +276,27 @@ type LearninContentWithCompetenceCertificate =
-
-
- {{ $t("a.Selbsteinschätzung") }}
-
-
-
-
- {{
- performanceCriteriaStatusCount(
- learningUnit.performance_criteria,
- "SUCCESS"
- )
- }}
-
-
-
- {{
- performanceCriteriaStatusCount(
- learningUnit.performance_criteria,
- "FAIL"
- )
- }}
-
-
-
- {{
- performanceCriteriaStatusCount(
- learningUnit.performance_criteria,
- "UNKNOWN"
- )
- }}
-
+
+
{{ $t("selfEvaluation.selfEvaluationYes") }}
+
+
+
+
{{ $t("selfEvaluation.selfEvaluationNo") }}
+
+
+
+
{{ $t("a.Selbsteinschätzung") }}
diff --git a/client/src/services/circle.ts b/client/src/services/circle.ts
index 2ee177aa..56b52813 100644
--- a/client/src/services/circle.ts
+++ b/client/src/services/circle.ts
@@ -2,7 +2,7 @@ import type {
CircleType,
CourseCompletionStatus,
LearningSequence,
- LearningUnitPerformanceCriteria,
+ LearningUnit,
} from "@/types";
export function circleFlatChildren(circle: CircleType) {
@@ -49,15 +49,22 @@ export function allFinishedInLearningSequence(ls: LearningSequence) {
});
}
-export function performanceCriteriaStatusCount(
- performanceCriteria: LearningUnitPerformanceCriteria[],
- status: CourseCompletionStatus
-) {
- return performanceCriteria.filter((pc) => pc.completion_status === status).length;
-}
-
-export function performanceCriteriaHasStatus(
- performanceCriteria: LearningUnitPerformanceCriteria[]
-) {
- return performanceCriteria.some((pc) => pc.completion_status !== "UNKNOWN");
+export function calcSelfEvaluationStatus(
+ learningUnit: LearningUnit
+): CourseCompletionStatus {
+ if (learningUnit.performance_criteria.length > 0) {
+ if (
+ learningUnit.performance_criteria.every((q) => q.completion_status === "SUCCESS")
+ ) {
+ return "SUCCESS";
+ }
+ if (
+ learningUnit.performance_criteria.every(
+ (q) => q.completion_status === "FAIL" || q.completion_status === "SUCCESS"
+ )
+ ) {
+ return "FAIL";
+ }
+ }
+ return "UNKNOWN";
}
diff --git a/server/vbv_lernwelt/static/icons/icon-lc-competence-certificate-checked.svg b/server/vbv_lernwelt/static/icons/icon-lc-competence-certificate-checked.svg
index 2cfbbf77..9686627d 100644
--- a/server/vbv_lernwelt/static/icons/icon-lc-competence-certificate-checked.svg
+++ b/server/vbv_lernwelt/static/icons/icon-lc-competence-certificate-checked.svg
@@ -1,13 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file