Übersetzungen
This commit is contained in:
parent
83fcb84303
commit
00a36b52c8
|
|
@ -94,7 +94,7 @@ function finishButtonEnabled() {
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="flex min-h-full flex-col">
|
<div class="flex min-h-full flex-col">
|
||||||
<div class="flex-1 overflow-y-auto">
|
<div class="overflow-y-auto">
|
||||||
<section class="p-10">
|
<section class="p-10">
|
||||||
<EvaluationIntro
|
<EvaluationIntro
|
||||||
v-if="stepIndex === 0"
|
v-if="stepIndex === 0"
|
||||||
|
|
|
||||||
|
|
@ -131,7 +131,7 @@ const evaluationUser = computed(() => {
|
||||||
<div
|
<div
|
||||||
v-if="props.assignmentCompletion.completion_status === 'EVALUATION_SUBMITTED'"
|
v-if="props.assignmentCompletion.completion_status === 'EVALUATION_SUBMITTED'"
|
||||||
>
|
>
|
||||||
Freigabetermin:
|
{{ $t("assignment.dueDateEvaluation") }}:
|
||||||
{{
|
{{
|
||||||
dayjs(props.assignmentCompletion.evaluation_submitted_at).format("DD.MM.YYYY")
|
dayjs(props.assignmentCompletion.evaluation_submitted_at).format("DD.MM.YYYY")
|
||||||
}}
|
}}
|
||||||
|
|
@ -157,7 +157,8 @@ const evaluationUser = computed(() => {
|
||||||
<article class="border-t py-4">
|
<article class="border-t py-4">
|
||||||
<div class="flex flex-row justify-between">
|
<div class="flex flex-row justify-between">
|
||||||
<div class="mb-4 text-gray-900">
|
<div class="mb-4 text-gray-900">
|
||||||
Bewertungskriterium {{ index + 1 }}: {{ task.value.title }}
|
{{ $t("a.Beurteilungskriterium") }} {{ index + 1 }}:
|
||||||
|
{{ task.value.title }}
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
v-if="
|
v-if="
|
||||||
|
|
@ -196,7 +197,7 @@ const evaluationUser = computed(() => {
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<span class="font-bold">Begründung:</span>
|
<span class="font-bold">{{ $t("a.Begründung") }}:</span>
|
||||||
{{ evaluationForTask(task).text }}
|
{{ evaluationForTask(task).text }}
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ const evaluateAssignmentCompletionDebounced = useDebounceFn(
|
||||||
<!-- eslint-disable vue/no-v-html -->
|
<!-- eslint-disable vue/no-v-html -->
|
||||||
<div data-cy="evaluation-task">
|
<div data-cy="evaluation-task">
|
||||||
<div class="text-bold mb-4 text-sm">
|
<div class="text-bold mb-4 text-sm">
|
||||||
Beurteilungskriterium {{ taskIndex + 1 }} /
|
{{ $t("a.Beurteilungskriterium") }} {{ taskIndex + 1 }} /
|
||||||
{{ props.assignment.evaluation_tasks.length }}
|
{{ props.assignment.evaluation_tasks.length }}
|
||||||
{{ task.value.title }}
|
{{ task.value.title }}
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -127,9 +127,9 @@ const evaluateAssignmentCompletionDebounced = useDebounceFn(
|
||||||
<ItTextarea
|
<ItTextarea
|
||||||
class="mt-8"
|
class="mt-8"
|
||||||
:model-value="expertData.text ?? ''"
|
:model-value="expertData.text ?? ''"
|
||||||
label="Begründung"
|
:label="$t('a.Begründung')"
|
||||||
:disabled="!props.allowEdit"
|
:disabled="!props.allowEdit"
|
||||||
placeholder="Hier muss zwingend eine Begründung erfasst werden."
|
:placeholder="$t('assignment.justificationRequiredText')"
|
||||||
data-cy="reason-text"
|
data-cy="reason-text"
|
||||||
@update:model-value="onUpdateText($event)"
|
@update:model-value="onUpdateText($event)"
|
||||||
></ItTextarea>
|
></ItTextarea>
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ const assignmentDetail = computed(() =>
|
||||||
class="link lg:w-full lg:text-right"
|
class="link lg:w-full lg:text-right"
|
||||||
data-cy="show-results"
|
data-cy="show-results"
|
||||||
>
|
>
|
||||||
{{ $t("Ergebnisse anzeigen") }}
|
{{ $t("a.Ergebnisse anschauen") }}
|
||||||
</router-link>
|
</router-link>
|
||||||
</template>
|
</template>
|
||||||
</ItPersonRow>
|
</ItPersonRow>
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ const getShowDetailsText = (lc: LearningContent) => {
|
||||||
if (isAssignment(lc)) {
|
if (isAssignment(lc)) {
|
||||||
const assignmentType = (lc as LearningContentAssignment).assignment_type;
|
const assignmentType = (lc as LearningContentAssignment).assignment_type;
|
||||||
if (assignmentType === "CASEWORK" || assignmentType === "REFLECTION") {
|
if (assignmentType === "CASEWORK" || assignmentType === "REFLECTION") {
|
||||||
return t("Ergebnisse anschauen");
|
return t("a.Ergebnisse anschauen");
|
||||||
} else if (
|
} else if (
|
||||||
assignmentType === "PREP_ASSIGNMENT" ||
|
assignmentType === "PREP_ASSIGNMENT" ||
|
||||||
assignmentType === "CONDITION_ACCEPTANCE"
|
assignmentType === "CONDITION_ACCEPTANCE"
|
||||||
|
|
|
||||||
|
|
@ -180,11 +180,14 @@ function checkboxIconUncheckedTailwindClass(lc: LearningContent) {
|
||||||
checkboxIconUncheckedTailwindClass(learningContent)
|
checkboxIconUncheckedTailwindClass(learningContent)
|
||||||
"
|
"
|
||||||
@toggle="toggleCompleted(learningContent)"
|
@toggle="toggleCompleted(learningContent)"
|
||||||
@click.stop="
|
@click="
|
||||||
() => {
|
(event) => {
|
||||||
// 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);
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,12 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="mb-12 grid grid-cols-icon-card gap-x-4 grid-areas-icon-card">
|
<div class="mb-12 grid grid-cols-icon-card gap-x-4 grid-areas-icon-card">
|
||||||
<it-icon-calendar-light class="w-[60px] grid-in-icon" />
|
<it-icon-calendar-light class="w-[60px] grid-in-icon" />
|
||||||
<h2 class="text-large font-bold grid-in-title">Datum</h2>
|
<h2 class="text-large font-bold grid-in-title">{{ $t("a.Datum") }}</h2>
|
||||||
<p class="grid-in-value">{{ formatDate(start, end) }}</p>
|
<p class="grid-in-value">{{ formatDate(start, end) }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-12 grid grid-cols-icon-card gap-x-4 grid-areas-icon-card">
|
<div class="mb-12 grid grid-cols-icon-card gap-x-4 grid-areas-icon-card">
|
||||||
<it-icon-location class="w-[60px] grid-in-icon" />
|
<it-icon-location class="w-[60px] grid-in-icon" />
|
||||||
<h2 class="text-large font-bold grid-in-title">Standort</h2>
|
<h2 class="text-large font-bold grid-in-title">{{ $t("a.Standort") }}</h2>
|
||||||
<p v-if="location.startsWith('https://')" class="grid-in-value">
|
<p v-if="location.startsWith('https://')" class="grid-in-value">
|
||||||
<a class="link" target="_blank" :href="location">{{ location }}</a>
|
<a class="link" target="_blank" :href="location">{{ location }}</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="grid grid-cols-icon-card content-between gap-x-4 grid-areas-icon-card">
|
<div class="grid grid-cols-icon-card content-between gap-x-4 grid-areas-icon-card">
|
||||||
<it-icon-trainer class="w-[60px] grid-in-icon" />
|
<it-icon-trainer class="w-[60px] grid-in-icon" />
|
||||||
<h2 class="text-large font-bold grid-in-title">Trainer</h2>
|
<h2 class="text-large font-bold grid-in-title">{{ $t("a.Trainer") }}</h2>
|
||||||
<p class="grid-in-value">{{ trainer }}</p>
|
<p class="grid-in-value">{{ trainer }}</p>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,7 @@ onUnmounted(() => {
|
||||||
<LearningContentMultiLayout
|
<LearningContentMultiLayout
|
||||||
:current-step="questionIndex"
|
:current-step="questionIndex"
|
||||||
:sub-title="$t('a.Selbsteinschätzung')"
|
:sub-title="$t('a.Selbsteinschätzung')"
|
||||||
:title="`${$t('a.Selbsteinschätzung')}: ${learningUnit.title}`"
|
:title="`${learningUnit.title}`"
|
||||||
icon="it-icon-lc-learning-module"
|
icon="it-icon-lc-learning-module"
|
||||||
:steps-count="questions.length"
|
:steps-count="questions.length"
|
||||||
:show-next-button="showNextButton"
|
:show-next-button="showNextButton"
|
||||||
|
|
@ -87,7 +87,7 @@ onUnmounted(() => {
|
||||||
<div class="h-full">
|
<div class="h-full">
|
||||||
<div class="mt-8">
|
<div class="mt-8">
|
||||||
<h3 class="heading-3">
|
<h3 class="heading-3">
|
||||||
{{ currentQuestion.competence_id }} {{ currentQuestion.title }}
|
{{ currentQuestion.title }}
|
||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
import wagtail_factories
|
import wagtail_factories
|
||||||
|
|
||||||
from vbv_lernwelt.competence.models import (
|
from vbv_lernwelt.competence.models import (
|
||||||
|
ActionCompetence,
|
||||||
|
ActionCompetenceListPage,
|
||||||
CompetenceCertificate,
|
CompetenceCertificate,
|
||||||
CompetenceCertificateList,
|
CompetenceCertificateList,
|
||||||
CompetenceNaviPage,
|
CompetenceNaviPage,
|
||||||
ActionCompetence,
|
|
||||||
ActionCompetenceListPage,
|
|
||||||
PerformanceCriteria,
|
PerformanceCriteria,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,25 +5,27 @@ from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
('wagtailforms', '0005_alter_formsubmission_form_data'),
|
("wagtailforms", "0005_alter_formsubmission_form_data"),
|
||||||
('wagtailcore', '0089_log_entry_data_json_null_to_object'),
|
("wagtailcore", "0089_log_entry_data_json_null_to_object"),
|
||||||
('wagtailredirects', '0008_add_verbose_name_plural'),
|
("wagtailredirects", "0008_add_verbose_name_plural"),
|
||||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||||
('course', '0004_auto_20230823_1744'),
|
("course", "0004_auto_20230823_1744"),
|
||||||
('duedate', '0004_alter_duedate_start'),
|
("duedate", "0004_alter_duedate_start"),
|
||||||
('contenttypes', '0002_remove_content_type_name'),
|
("contenttypes", "0002_remove_content_type_name"),
|
||||||
('competence', '0003_competencecertificate_competencecertificatelist_competencenavipage'),
|
(
|
||||||
|
"competence",
|
||||||
|
"0003_competencecertificate_competencecertificatelist_competencenavipage",
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RenameModel(
|
migrations.RenameModel(
|
||||||
old_name='CompetencePage',
|
old_name="CompetencePage",
|
||||||
new_name='ActionCompetence',
|
new_name="ActionCompetence",
|
||||||
),
|
),
|
||||||
migrations.RenameModel(
|
migrations.RenameModel(
|
||||||
old_name='CompetenceProfilePage',
|
old_name="CompetenceProfilePage",
|
||||||
new_name='ActionCompetenceListPage',
|
new_name="ActionCompetenceListPage",
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,9 @@ from django.db.models import Q
|
||||||
from vbv_lernwelt.assignment.models import Assignment
|
from vbv_lernwelt.assignment.models import Assignment
|
||||||
from vbv_lernwelt.competence.models import (
|
from vbv_lernwelt.competence.models import (
|
||||||
ActionCompetenceListPage,
|
ActionCompetenceListPage,
|
||||||
CompetenceNaviPage,
|
|
||||||
CompetenceCertificateList,
|
|
||||||
CompetenceCertificate,
|
CompetenceCertificate,
|
||||||
|
CompetenceCertificateList,
|
||||||
|
CompetenceNaviPage,
|
||||||
)
|
)
|
||||||
from vbv_lernwelt.course.consts import (
|
from vbv_lernwelt.course.consts import (
|
||||||
COURSE_TEST_ID,
|
COURSE_TEST_ID,
|
||||||
|
|
@ -55,12 +55,22 @@ def refactor_competence_wagtail_tree(apps=None, schema_editor=None):
|
||||||
COURSE_UK_IT,
|
COURSE_UK_IT,
|
||||||
]:
|
]:
|
||||||
if not competence_certificate_list:
|
if not competence_certificate_list:
|
||||||
competence_certificate_list = CompetenceCertificateList(
|
title = "Kompetenznachweise"
|
||||||
title="Kompetenznachweise",
|
if course_page.course.id == COURSE_UK_FR:
|
||||||
)
|
title = "Contrôles de compétences"
|
||||||
|
if course_page.course.id == COURSE_UK_IT:
|
||||||
|
title = "Controlli delle competenze"
|
||||||
|
|
||||||
|
competence_certificate_list = CompetenceCertificateList(title=title)
|
||||||
competence_navi_page.add_child(instance=competence_certificate_list)
|
competence_navi_page.add_child(instance=competence_certificate_list)
|
||||||
|
|
||||||
|
title = "Kompetenznachweis 1"
|
||||||
|
if course_page.course.id == COURSE_UK_FR:
|
||||||
|
title = "Contrôle de compétences 1"
|
||||||
|
if course_page.course.id == COURSE_UK_IT:
|
||||||
|
title = "Controllo delle competenze 1"
|
||||||
competence_certificate = CompetenceCertificate(
|
competence_certificate = CompetenceCertificate(
|
||||||
title="Kompetenznachweis 1",
|
title=title,
|
||||||
)
|
)
|
||||||
competence_certificate_list.add_child(instance=competence_certificate)
|
competence_certificate_list.add_child(instance=competence_certificate)
|
||||||
|
|
||||||
|
|
@ -70,9 +80,15 @@ def refactor_competence_wagtail_tree(apps=None, schema_editor=None):
|
||||||
casework_assignment.competence_certificate = competence_certificate
|
casework_assignment.competence_certificate = competence_certificate
|
||||||
casework_assignment.save()
|
casework_assignment.save()
|
||||||
|
|
||||||
|
title = "Wissens- und Verständnisfragen"
|
||||||
|
if course_page.course.id == COURSE_UK_FR:
|
||||||
|
title = "Questions de connaissance et de compréhension "
|
||||||
|
if course_page.course.id == COURSE_UK_IT:
|
||||||
|
title = "Domande di conoscenza e di comprensione"
|
||||||
|
|
||||||
edoniq_test = create_edoniq_test_assignment(
|
edoniq_test = create_edoniq_test_assignment(
|
||||||
course_id=course_page.course.id,
|
course_id=course_page.course.id,
|
||||||
title="Edoniq Wissens- und Verständisfragen",
|
title=title,
|
||||||
competence_certificate=competence_certificate,
|
competence_certificate=competence_certificate,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue