diff --git a/apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte b/apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte index a53145d6a..80b80bdb9 100644 --- a/apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte +++ b/apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte @@ -6,10 +6,10 @@ import { goto } from '$app/navigation'; import { useQuiz, useQuestions, blankOption } from './queries'; import { quizzesStore } from './stores/quizzes.svelte'; - import { QUESTION_TYPE_LABELS } from './types'; import type { QuestionType, QuestionOption, QuizQuestion } from './types'; import { ArrowLeft, Plus, Trash, Check, Play, PencilSimple, X } from '@mana/shared-icons'; import { VisibilityPicker, type VisibilityLevel } from '@mana/shared-privacy'; + import { _ } from 'svelte-i18n'; interface Props { quizId: string; @@ -42,7 +42,7 @@ async function saveMeta() { if (!quiz) return; await quizzesStore.updateQuiz(quiz.id, { - title: metaTitle.trim() || 'Unbenannt', + title: metaTitle.trim() || $_('quiz.edit_view.untitled_fallback'), description: metaDescription.trim() || null, category: metaCategory.trim() || null, tags: metaTags @@ -71,8 +71,8 @@ function defaultOptions(type: QuestionType): QuestionOption[] { if (type === 'truefalse') { return [ - { id: 't', text: 'Wahr', isCorrect: true }, - { id: 'f', text: 'Falsch', isCorrect: false }, + { id: 't', text: $_('quiz.edit_view.truefalse_true'), isCorrect: true }, + { id: 'f', text: $_('quiz.edit_view.truefalse_false'), isCorrect: false }, ]; } if (type === 'text') return []; @@ -166,7 +166,7 @@ } async function deleteQuestion(id: string) { - if (!confirm('Frage löschen?')) return; + if (!confirm($_('quiz.edit_view.confirm_delete_question'))) return; await quizzesStore.deleteQuestion(id); } @@ -181,8 +181,9 @@
- {#if quiz} {/if}
{#if !quiz} -

Quiz nicht gefunden.

+

{$_('quiz.edit_view.empty_quiz')}

{:else}
@@ -219,18 +221,18 @@ type="text" bind:value={metaCategory} onblur={saveMeta} - placeholder="Kategorie" + placeholder={$_('quiz.edit_view.placeholder_category')} />
- Sichtbarkeit + {$_('quiz.edit_view.label_visibility')}
-

Fragen ({questions.length})

+

{$_('quiz.edit_view.section_questions', { values: { n: questions.length } })}

{#if questions.length === 0} -

Noch keine Fragen — füge unten eine hinzu.

+

{$_('quiz.edit_view.empty_questions')}

{:else}
    {#each questions as q, i (q.id)}
  1. {i + 1} - {QUESTION_TYPE_LABELS[q.type]} + {$_('quiz.question_types.' + q.type)} {/if}
    {#if newType === 'text'} {:else}
    - Antworten {newType === 'multi' ? '(mehrere richtig möglich)' : '(eine richtig)'} + {newType === 'multi' + ? $_('quiz.edit_view.options_label_multi') + : $_('quiz.edit_view.options_label_single')} {#each newOptions as opt, i (opt.id)}
    {/if}
    {/if}
diff --git a/scripts/i18n-hardcoded-baseline.json b/scripts/i18n-hardcoded-baseline.json index 71552c8c8..dd610f43f 100644 --- a/scripts/i18n-hardcoded-baseline.json +++ b/scripts/i18n-hardcoded-baseline.json @@ -170,7 +170,6 @@ "apps/mana/apps/web/src/lib/modules/profile/MeImagesView.svelte": 2, "apps/mana/apps/web/src/lib/modules/questions/ListView.svelte": 1, "apps/mana/apps/web/src/lib/modules/questions/views/DetailView.svelte": 6, - "apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte": 13, "apps/mana/apps/web/src/lib/modules/quiz/ListView.svelte": 5, "apps/mana/apps/web/src/lib/modules/quiz/PlayView.svelte": 6, "apps/mana/apps/web/src/lib/modules/quotes/views/DetailView.svelte": 2, diff --git a/scripts/i18n-missing-baseline.json b/scripts/i18n-missing-baseline.json index d3803708e..c49243b78 100644 --- a/scripts/i18n-missing-baseline.json +++ b/scripts/i18n-missing-baseline.json @@ -15,6 +15,7 @@ "apps/mana/apps/web/src/lib/modules/library/views/DetailView.svelte": 3, "apps/mana/apps/web/src/lib/modules/period/ListView.svelte": 1, "apps/mana/apps/web/src/lib/modules/plants/ListView.svelte": 5, + "apps/mana/apps/web/src/lib/modules/quiz/EditView.svelte": 1, "apps/mana/apps/web/src/lib/modules/quotes/components/QuoteCard.svelte": 4, "apps/mana/apps/web/src/lib/modules/recipes/ListView.svelte": 1, "apps/mana/apps/web/src/lib/modules/times/components/EntryForm.svelte": 6,