M3: Admin nyelvválasztó átalakítása legördülő menüvé #376
Notifications
Total Time Spent: 3 minutes
kincses
3 minutes
No due date set.
Dependencies
No dependencies set.
Reference: kincses/service-finder#376
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Mérföldkő: Frontend Admin i18n Restruktúrálás
Cél: A jelenlegi kétállású HU/EN kapcsoló átalakítása bővíthető, legördülő nyelvválasztó dropdownná, amely a backend-ből érkező támogatott nyelveket listázza
🔗 Függőségek (Dependencies)
📝 Elemzés
A jelenlegi megvalósítás a default.vue 158-170. soraiban egy egyszerű two-state toggle: HU/EN gombpár, fix CSS osztályokkal. Ez nem skálázható 3+ nyelvre. A javasolt megoldás: egy teljes értékű select/dropdown komponens, amely támogatja a zászló emoji-kat, a nyelv nevét az adott nyelven, és a localStorage + backend API (PATCH /auth/me/language) együttes kezelését. A kód tartalmazza a pillanatnyi nyelvváltást vue-i18n setLocale() segítségével, majd a backend perzisztálást.
▶️ Munka megkezdve: 2026-06-30 22:08:39
✅ Munka befejezve: 2026-06-30 22:12:34
Technikai Összefoglaló:
LanguageSwitcher dropdown komponens létrehozva (zászló emoji, dinamikus locale lista, backend PATCH perzisztálás, localStorage). default.vue-ból eltávolítva a régi gomb-alapú kapcsoló és a felesleges i18n logika. Nuxt production build: ✅ Sikeres.
⏱️ Az idő rögzítve.
✅ #376 - M3: Admin nyelvválasztó átalakítása legördülő menüvé — KÉSZ
Végrehajtott módosítások:
1.
frontend_admin/components/LanguageSwitcher.vue— LÉTREHOZVA🇭🇺(hu),🇬🇧(en)nuxt.config.ts-ből (localestömb)localeazonnali váltásalocalStorage.setItem('preferred_language', code)— offline tárolásPATCH /api/v1/auth/me/language— szerveroldali perzisztáláshandleClickOutside)2.
frontend_admin/layouts/default.vue— MÓDOSÍTVAv-for="locale in availableLocales") kicserélve<LanguageSwitcher />komponensreuseI18nimport,availableLocales/currentLocalecomputed-ok,getAuthHeaders(),switchLocale()függvény (~25 sor)Ellenőrzés: