feat: Implement core e-learning features including course discovery, classroom components, user profile management, and internationalization for English and Thai.

This commit is contained in:
supalerk-ar66 2026-02-11 11:25:55 +07:00
parent e7a2ac8b5a
commit 7ead98375e
11 changed files with 107 additions and 43 deletions

View file

@ -111,7 +111,13 @@ const handleFileUpload = (event: Event) => {
<label class="text-xs font-bold text-slate-500 dark:text-slate-400 ml-1 uppercase">{{ $t('profile.prefix') }}</label>
<q-select
v-model="modelValue.prefix"
:options="['นาย', 'นาง', 'นางสาว']"
:options="[
{ label: $t('profile.mr'), value: 'นาย' },
{ label: $t('profile.mrs'), value: 'นาง' },
{ label: $t('profile.miss'), value: 'นางสาว' }
]"
emit-value
map-options
outlined
dense
rounded
@ -161,7 +167,7 @@ const handleFileUpload = (event: Event) => {
<template v-slot:append>
<div v-if="modelValue.emailVerifiedAt" class="flex items-center gap-1">
<q-icon name="check_circle" color="positive" />
<span class="text-green-600 text-xs font-bold">{{ $t('profile.emailVerified') || 'ยืนยันแล้ว' }}</span>
<span class="text-green-600 text-xs font-bold">{{ $t('profile.emailVerified') }}</span>
</div>
<q-btn
v-else
@ -170,7 +176,7 @@ const handleFileUpload = (event: Event) => {
no-caps
color="negative"
icon="mark_email_read"
:label="$t('profile.verifyEmail') || 'ยืนยัน'"
:label="$t('profile.verifyEmail')"
class="text-sm font-bold"
:loading="verifying"
@click="$emit('verify')"