feat(bisaya-course): refine exercises and instructions for improved learning experience
All checks were successful
Deploy to production / deploy (push) Successful in 2m54s

- Updated exercise titles and instructions to enhance clarity and focus on specific learning objectives.
- Modified question data and answer options to better align with the lesson's vocabulary and context.
- Improved explanations to provide clearer guidance on language usage and learning goals, fostering better comprehension for learners.
This commit is contained in:
Torsten Schulz (local)
2026-04-09 17:49:50 +02:00
parent 2b66f76dd9
commit 5cbd6d06b1
2 changed files with 33 additions and 10 deletions

View File

@@ -1290,20 +1290,20 @@ const BISAYA_EXERCISES = {
},
{
exerciseTypeId: 4,
title: 'Haus mit zwei Zimmern',
instruction: 'Übersetze den Satz ins Bisaya.',
title: 'Unser Haus benennen',
instruction: 'Übersetze den kurzen Satz ins Bisaya (nur Wortschatz und Muster aus dieser Lektion).',
questionData: {
type: 'transformation',
text: 'Unser Haus hat zwei Zimmer',
text: 'Unser Haus.',
sourceLanguage: 'Deutsch',
targetLanguage: 'Bisaya'
},
answerData: {
type: 'transformation',
correct: 'Ang among balay kay naay duha ka kwarto',
alternatives: ['Among balay naay duha ka kwarto', 'Ang among balay adunay duha ka kwarto']
correct: 'Ang among balay',
alternatives: ['Among balay.', 'Ang among balay.']
},
explanation: '„Among balay“ = unser Haus; „duha ka kwarto“ = zwei Zimmer.'
explanation: '„Ang among balay.“ = unser Haus; „among“ (inklusiv) und „balay“ sind die Lernziele dieser Einheit.'
},
{
exerciseTypeId: 4,
@@ -1324,17 +1324,22 @@ const BISAYA_EXERCISES = {
},
withTypeName('dialog_completion', {
title: 'Nach der Küche fragen',
instruction: 'Ergänze die passende Antwort.',
instruction: 'Ergänze die passende Antwort (Ortsangaben wie didto/luyo kommen in der nächsten Lektion).',
questionData: {
type: 'dialog_completion',
question: 'Welche Antwort passt?',
dialog: ['A: Asa ang kusina?', 'B: ...']
},
answerData: {
modelAnswer: 'Didto sa luyo.',
correct: ['Didto sa luyo.', 'Naa didto.', 'Tua didto sa kusina.', 'Naa siya sa kusina.']
modelAnswer: 'Naa sila sa kusina.',
correct: [
'Naa sila sa kusina.',
'Naa siya sa kusina.',
'Naa ko sa kusina.',
'Sa kusina.'
]
},
explanation: 'Kurze Wegzeiger wie „Didto sa luyo.“ (dort hinten) oder direkt „Naa siya sa kusina.“'
explanation: 'Mit „Naa … sa kusina“ kannst du sagen, wo sich jemand befindet dasselbe Muster wie „Naa sila sa kusina.“ in der Lektion.'
}),
withTypeName('situational_response', {
title: 'Zu Hause kurz beschreiben',

View File

@@ -1868,6 +1868,8 @@ export default {
this.activeTab = 'learn';
}
this.syncExerciseSequentialIndexToFirstUnanswered();
this.lessonStatePersistenceReady = true;
if (this.vocabTrainerActive && this.vocabTrainerPool.length > 0) {
this.$nextTick(() => {
@@ -1936,6 +1938,21 @@ export default {
this.exerciseSequentialIndex = next;
this.persistLessonState();
},
/**
* Kapitel-Prüfung (eine Frage pro Schritt): Wenn gespeicherte Antworten existieren, aber der
* Index noch auf einer schon beantworteten Frage steht, zur ersten noch offenen Frage springen.
*/
syncExerciseSequentialIndexToFirstUnanswered() {
const list = this.scrambledChapterExamExercises;
if (!list.length || !this.sequentialPanelActive) {
return;
}
const firstUnanswered = list.findIndex((exercise) => !this.exerciseResults[exercise.id]);
if (firstUnanswered === -1) {
return;
}
this.exerciseSequentialIndex = firstUnanswered;
},
confirmExerciseReinforcement() {
this.showExerciseReinforcementDialog = false;
if (this.exerciseReinforcementPrepMode) {
@@ -2042,6 +2059,7 @@ export default {
}
this.activeTab = 'exercises';
this.$nextTick(() => {
this.syncExerciseSequentialIndexToFirstUnanswered();
const scrollEl = document.querySelector('.app-content__scroll.contentscroll');
if (scrollEl) {
scrollEl.scrollTop = 0;