Add Schulsprache (school language) as second language setting
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 27s
CI / test-go-edu-search (push) Successful in 28s
CI / test-python-klausur (push) Failing after 2m21s
CI / test-python-agent-core (push) Successful in 18s
CI / test-nodejs-website (push) Successful in 22s

- LanguageContext: new schoolLanguage + setSchoolLanguage
- LanguageDropdown: two tabs (Muttersprache / Schulsprache) with flag selection
- UnitBuilder: defaults target language to schoolLanguage
- Stored in bp_school_language localStorage (default: de)
- Shows school flag badge next to main language when different

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-04-29 17:49:58 +02:00
parent fc49d87928
commit bde0d57b5a
5 changed files with 97 additions and 40 deletions
+15 -1
View File
@@ -388,8 +388,9 @@ export const translations: Record<string, Record<string, string>> = {
},
}
// LocalStorage Key
// LocalStorage Keys
const STORAGE_KEY = 'bp_language'
const SCHOOL_LANG_KEY = 'bp_school_language'
// Aktuelle Sprache aus localStorage oder default
export function getStoredLanguage(): Language {
@@ -413,6 +414,19 @@ export function setStoredLanguage(lang: Language): void {
localStorage.setItem(STORAGE_KEY, lang)
}
// Schulsprache aus localStorage (default: 'de')
export function getStoredSchoolLanguage(): Language {
if (typeof window === 'undefined') return defaultLanguage
const stored = localStorage.getItem(SCHOOL_LANG_KEY)
if (stored && stored in availableLanguages) return stored
return defaultLanguage
}
export function setStoredSchoolLanguage(lang: Language): void {
if (typeof window === 'undefined') return
localStorage.setItem(SCHOOL_LANG_KEY, lang)
}
// Uebersetzung abrufen (Fallback: en → de → key)
export function t(key: string, lang: Language): string {
return translations[lang]?.[key] || translations['en']?.[key] || translations['de']?.[key] || key