feat(bisaya-course): add new exercises for various everyday scenarios
All checks were successful
Deploy to production / deploy (push) Successful in 2m44s

- Introduced multiple-choice, gap-fill, and situational response exercises across several categories including 'Besuch & Gastfreundschaft', 'Gesundheit im Alltag', 'Unterwegs & Transport', 'Kinder im Alltag', and 'Arzt & Termin'.
- Each category includes detailed instructions, question data, answer data, and explanations to enhance learning experiences.
- Expanded the vocabulary and situational context for learners to practice real-life interactions in Bisaya.
This commit is contained in:
Torsten Schulz (local)
2026-03-31 08:56:36 +02:00
parent 9a78bc7c4b
commit 53f0745faf

View File

@@ -1787,6 +1787,355 @@ const BISAYA_EXERCISES = {
},
explanation: 'Eine kurze höfliche Antwort reicht hier völlig aus.'
})
],
'Besuch & Gastfreundschaft': [
{
exerciseTypeId: 2,
title: 'Gast hereinbitten',
instruction: 'Wähle die natürlichste Formulierung, um einen Gast hereinzubitten.',
questionData: {
type: 'multiple_choice',
question: 'Ein Familiengast steht vor der Tür. Was sagst du zuerst?',
options: ['Sulod lang.', 'Magpahuway sa.', 'Pila ang plite?', 'Asa ang sakayan?']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"Sulod lang." bedeutet sinngemäß "Komm einfach rein."'
},
{
exerciseTypeId: 1,
title: 'Gast setzen lassen',
instruction: 'Fülle die Lücke mit der passenden Einladung aus.',
questionData: {
type: 'gap_fill',
text: 'Sulod lang. {gap} sa.',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['Lingkod']
},
explanation: '"Lingkod sa." bedeutet "Setz dich erst einmal."'
},
withTypeName('situational_response', {
title: 'Gast begrüßen und platzieren',
instruction: 'Reagiere kurz und passend.',
questionData: {
type: 'situational_response',
question: 'Begrüße einen Gast, bitte ihn herein und biete einen Sitzplatz an.',
keywords: ['sulod', 'lingkod']
},
answerData: {
modelAnswer: 'Maayong adlaw. Sulod lang. Lingkod sa.',
keywords: ['sulod', 'lingkod']
},
explanation: 'Das ist ein kompaktes, sehr natürliches Besuchsmuster.'
})
],
'Gesundheit im Alltag': [
{
exerciseTypeId: 2,
title: 'Nach Beschwerden fragen',
instruction: 'Wähle die passendste Frage bei Kopfweh.',
questionData: {
type: 'multiple_choice',
question: 'Jemand wirkt krank. Wie fragst du nach Kopfweh?',
options: ['Sakit imong ulo?', 'Asa ang merkado?', 'Naa kay assignment?', 'Mubayad ko.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"Sakit imong ulo?" fragt direkt nach Kopfschmerzen.'
},
{
exerciseTypeId: 1,
title: 'Fürsorge bei Krankheit',
instruction: 'Fülle die Lücke mit der passenden Fürsorgeformel.',
questionData: {
type: 'gap_fill',
text: 'Sakit imong ulo? {gap} sa.',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['Magpahuway']
},
explanation: '"Magpahuway sa." heißt "Ruh dich erst einmal aus."'
},
withTypeName('situational_response', {
title: 'Kranke Person versorgen',
instruction: 'Antworte kurz und fürsorglich.',
questionData: {
type: 'situational_response',
question: 'Frage nach Schmerzen und biete Ruhe an.',
keywords: ['sakit', 'magpahuway']
},
answerData: {
modelAnswer: 'Sakit imong ulo? Magpahuway sa.',
keywords: ['sakit', 'magpahuway']
},
explanation: 'Das Muster verbindet Frage und Fürsorge in einer natürlichen Miniszene.'
})
],
'Unterwegs & Transport': [
{
exerciseTypeId: 2,
title: 'Nach der Haltestelle fragen',
instruction: 'Wähle die passende Transportfrage.',
questionData: {
type: 'multiple_choice',
question: 'Du willst wissen, wo du ein Fahrzeug bekommst. Was fragst du?',
options: ['Asa ang sakayan?', 'Sulod lang.', 'Nikaon na ka?', 'Unsay gibati nimo?']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"sakayan" meint den Ort oder das Fahrzeug zum Einsteigen.'
},
{
exerciseTypeId: 1,
title: 'Fahrtpreis ergänzen',
instruction: 'Fülle die Lücke mit dem passenden Wort.',
questionData: {
type: 'gap_fill',
text: 'Pila ang {gap}?',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['plite']
},
explanation: '"plite" ist der Fahrpreis.'
},
withTypeName('situational_response', {
title: 'Transport klären',
instruction: 'Reagiere mit zwei kurzen Fragen.',
questionData: {
type: 'situational_response',
question: 'Frage nach Haltestelle und Fahrpreis.',
keywords: ['sakayan', 'plite']
},
answerData: {
modelAnswer: 'Asa ang sakayan? Pila ang plite?',
keywords: ['sakayan', 'plite']
},
explanation: 'Das ist ein typischer Minidialog für Alltag und Transport.'
})
],
'Kinder im Alltag': [
{
exerciseTypeId: 2,
title: 'Kind nach Essen fragen',
instruction: 'Wähle die natürlichste Frage an ein Kind.',
questionData: {
type: 'multiple_choice',
question: 'Wie fragst du ein Kind, ob es schon gegessen hat?',
options: ['Nikaon na ang bata?', 'Pila ni tanan?', 'Asa ang porma?', 'Mubayad ko.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: 'Hier wird gezielt das Muster für das Kind im Alltag geübt.'
},
{
exerciseTypeId: 1,
title: 'Schulfrage ergänzen',
instruction: 'Fülle die Lücke mit dem passenden Schulwort.',
questionData: {
type: 'gap_fill',
text: 'Andam na ka sa {gap}?',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['eskwela']
},
explanation: '"eskwela" bedeutet Schule.'
},
withTypeName('situational_response', {
title: 'Kind für Schule vorbereiten',
instruction: 'Reagiere fürsorglich und kurz.',
questionData: {
type: 'situational_response',
question: 'Frage nach Essen und ob das Kind bereit für die Schule ist.',
keywords: ['nikaon', 'eskwela']
},
answerData: {
modelAnswer: 'Nikaon na ka? Andam na ka sa eskwela?',
keywords: ['nikaon', 'eskwela']
},
explanation: 'Das verbindet Fürsorge und Schulroutine in einem kompakten Muster.'
})
],
'Arzt & Termin': [
{
exerciseTypeId: 2,
title: 'Zum Arzt gehen',
instruction: 'Wähle die passende Arztformulierung.',
questionData: {
type: 'multiple_choice',
question: 'Wie sagst du: "Wir gehen zum Arzt"?',
options: ['Adto ta sa doktor.', 'Giinvite tika.', 'Bisita mo unya.', 'Magdula ta.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"Adto ta sa doktor." ist die direkte, alltagstaugliche Form.'
},
{
exerciseTypeId: 1,
title: 'Terminfrage ergänzen',
instruction: 'Fülle die Lücke mit dem passenden Fremdwort.',
questionData: {
type: 'gap_fill',
text: 'Naa moy {gap}?',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['appointment']
},
explanation: '"appointment" wird im Alltag oft direkt verwendet.'
},
withTypeName('situational_response', {
title: 'Arzttermin vorbereiten',
instruction: 'Antworte in zwei kurzen Sätzen.',
questionData: {
type: 'situational_response',
question: 'Sage, dass ihr zum Arzt geht, und frage nach dem Termin.',
keywords: ['doktor', 'appointment']
},
answerData: {
modelAnswer: 'Adto ta sa doktor. Naa moy appointment?',
keywords: ['doktor', 'appointment']
},
explanation: 'Das Muster verbindet Weg zum Arzt und Terminorganisation.'
})
],
'Dialogtag - Familie & Planung': [
{
exerciseTypeId: 2,
title: 'Tagesplan eröffnen',
instruction: 'Wähle die Formulierung, mit der du die Tagesplanung eröffnest.',
questionData: {
type: 'multiple_choice',
question: 'Wie fragst du in der Familie nach dem Plan für heute?',
options: ['Unsa atong plano karon?', 'Asa ang ATM?', 'Pila ang plite?', 'Salamat sa pag-anhi.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: 'Damit eröffnest du einen Familien- oder Organisationsdialog sehr natürlich.'
},
{
exerciseTypeId: 1,
title: 'Kind abholen ergänzen',
instruction: 'Fülle die Lücke mit dem passenden Verb aus.',
questionData: {
type: 'gap_fill',
text: '{gap} nato ang bata unya.',
gaps: 1
},
answerData: {
type: 'gap_fill',
answers: ['Kuhaon']
},
explanation: '"Kuhaon nato" meint hier "wir holen ... später ab".'
},
withTypeName('situational_response', {
title: 'Familie planen',
instruction: 'Reagiere in zwei bis drei kurzen Sätzen.',
questionData: {
type: 'situational_response',
question: 'Frage nach dem Plan für heute, sage, dass ihr das Kind später abholt, und kündige an, danach heimzugehen.',
keywords: ['plano', 'bata', 'mouli']
},
answerData: {
modelAnswer: 'Unsa atong plano karon? Kuhaon nato ang bata unya. Pagkahuman, mouli ta.',
keywords: ['plano', 'bata', 'mouli']
},
explanation: 'Das ist ein typisches zusammenhängendes Planungsmuster aus der Stabilisierungsphase.'
})
],
'Fehlertraining - häufige Verwechslungen I': [
{
exerciseTypeId: 2,
title: 'Vergangenheit oder Zukunft',
instruction: 'Wähle die Formulierung für "Ich bin hingegangen".',
questionData: {
type: 'multiple_choice',
question: 'Welche Form passt zur Vergangenheit?',
options: ['Niadto ko.', 'Moadto ko.', 'Palihug.', 'Pasayloa ko.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"Niadto ko." bezieht sich auf Vergangenes, "Moadto ko." auf Zukünftiges.'
},
{
exerciseTypeId: 2,
title: 'Bitte oder Entschuldigung',
instruction: 'Wähle die Formulierung für eine Bitte.',
questionData: {
type: 'multiple_choice',
question: 'Welche Form bedeutet "Bitte"?',
options: ['Palihug.', 'Pasayloa ko.', 'Niadto ko.', 'Moadto ko.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: '"Palihug." ist die Bitte, "Pasayloa ko." die Entschuldigung.'
},
withTypeName('situational_response', {
title: 'Bitte und Entschuldigung trennen',
instruction: 'Antworte mit Bitte und Entschuldigung in der richtigen Reihenfolge.',
questionData: {
type: 'situational_response',
question: 'Bitte zuerst höflich um Wiederholung und entschuldige dich danach.',
keywords: ['palihug', 'pasayloa']
},
answerData: {
modelAnswer: 'Palihug ka mubalik. Pasayloa ko.',
keywords: ['palihug', 'pasayloa']
},
explanation: 'Das Fehlertraining soll genau solche nahen Alltagsformen sauber trennen.'
})
],
'Abschlussprüfung - Gesamtpfad': [
{
exerciseTypeId: 2,
title: 'Gesamtpfad: Alltagssituation erkennen',
instruction: 'Wähle die passendste Reaktion.',
questionData: {
type: 'multiple_choice',
question: 'Ihr müsst in die Stadt, habt einen Termin und jemand braucht Hilfe. Welche Formulierung passt am besten?',
options: ['Aduna mi appointment. Tabangan tika.', 'Sulod lang. Lingkod sa.', 'Magdula ta. Lingaw ka?', 'Palangga taka. Gimingaw ko nimo.']
},
answerData: { type: 'multiple_choice', correctAnswer: 0 },
explanation: 'Die Abschlussprüfung mischt bewusst mehrere Alltagsfelder.'
},
{
exerciseTypeId: 1,
title: 'Gesamtpfad: Kernmuster vervollständigen',
instruction: 'Fülle beide Lücken mit den passenden Wörtern.',
questionData: {
type: 'gap_fill',
text: 'Moadto mi sa {gap}. Aduna mi {gap}.',
gaps: 2
},
answerData: {
type: 'gap_fill',
answers: ['lungsod', 'appointment']
},
explanation: 'Das verbindet Weg, Ort und Terminorganisation.'
},
withTypeName('situational_response', {
title: 'Gesamtpfad: Kompakte Abschlussreaktion',
instruction: 'Reagiere in drei kurzen Sätzen.',
questionData: {
type: 'situational_response',
question: 'Sage, dass ihr in die Stadt fahrt, einen Termin habt und du helfen wirst.',
keywords: ['lungsod', 'appointment', 'tabangan']
},
answerData: {
modelAnswer: 'Moadto mi sa lungsod. Aduna mi appointment. Tabangan tika.',
keywords: ['lungsod', 'appointment', 'tabangan']
},
explanation: 'Die Abschlussprüfung bündelt Weg, Organisation und Hilfe in einer letzten Miniszene.'
})
]
};