feat(vocab): update course today plan localization and UI logic
All checks were successful
Deploy to production / deploy (push) Successful in 2m49s
All checks were successful
Deploy to production / deploy (push) Successful in 2m49s
- Added new localization strings for scenarios with no due reviews in German, English, and Spanish, enhancing user guidance. - Updated VocabCourseView to conditionally display the appropriate introduction message based on the presence of due reviews, improving clarity in the course flow.
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
<section class="surface-card review-header">
|
||||
<button type="button" class="button-secondary" @click="backToCourse">{{ $t('general.back') }}</button>
|
||||
<div>
|
||||
<h2>Kurz-Wiederholung</h2>
|
||||
<h2>{{ $t('socialnetwork.vocab.courses.quickReviewTitle') }}</h2>
|
||||
<p v-if="lesson">{{ lesson.title }} (#{{ lesson.lessonNumber }})</p>
|
||||
</div>
|
||||
</section>
|
||||
@@ -12,17 +12,17 @@
|
||||
<section v-else-if="!lesson" class="surface-card review-state">{{ $t('socialnetwork.vocab.notFound') }}</section>
|
||||
<section v-else class="surface-card review-body">
|
||||
<p class="review-intro">
|
||||
Kurze Session mit {{ reviewQueue.length }} Begriffen. Nach Abschluss wird die geplante Wiederholung als erledigt markiert.
|
||||
{{ $t('socialnetwork.vocab.courses.quickReviewIntro', { count: reviewQueue.length }) }}
|
||||
</p>
|
||||
|
||||
<div v-if="reviewDone" class="review-done">
|
||||
<h3>Geschafft</h3>
|
||||
<p>Richtig: {{ correctCount }} / {{ reviewQueue.length }}</p>
|
||||
<button type="button" @click="backToCourse">Zurück zum Kurs</button>
|
||||
<h3>{{ $t('socialnetwork.vocab.courses.quickReviewDoneTitle') }}</h3>
|
||||
<p>{{ $t('socialnetwork.vocab.courses.quickReviewDoneScore', { correct: correctCount, total: reviewQueue.length }) }}</p>
|
||||
<button type="button" @click="backToCourse">{{ $t('socialnetwork.vocab.courses.quickReviewBackToCourse') }}</button>
|
||||
</div>
|
||||
|
||||
<div v-else-if="currentItem" class="review-card">
|
||||
<p class="review-progress">Begriff {{ currentIndex + 1 }} von {{ reviewQueue.length }}</p>
|
||||
<p class="review-progress">{{ $t('socialnetwork.vocab.courses.quickReviewProgress', { current: currentIndex + 1, total: reviewQueue.length }) }}</p>
|
||||
<p class="review-question">{{ currentPrompt }}</p>
|
||||
|
||||
<div v-if="mode === 'multiple_choice'" class="review-options">
|
||||
@@ -55,7 +55,7 @@
|
||||
class="button-secondary"
|
||||
@click="advanceAfterFeedback"
|
||||
>
|
||||
Gelesen, weiter
|
||||
{{ $t('socialnetwork.vocab.courses.quickReviewAcknowledge') }}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -101,8 +101,8 @@ export default {
|
||||
currentPrompt() {
|
||||
if (!this.currentItem) return '';
|
||||
return this.mode === 'multiple_choice'
|
||||
? `Was bedeutet "${this.currentItem.target}"?`
|
||||
: `Tippe auf Zielsprache: "${this.currentItem.gloss}"`;
|
||||
? this.$t('socialnetwork.vocab.courses.quickReviewPromptMeaning', { term: this.currentItem.target })
|
||||
: this.$t('socialnetwork.vocab.courses.quickReviewPromptTarget', { term: this.currentItem.gloss });
|
||||
},
|
||||
submitDisabled() {
|
||||
if (!this.currentItem) return true;
|
||||
|
||||
Reference in New Issue
Block a user