diff --git a/Frontend-Learner/assets/css/main.css b/Frontend-Learner/assets/css/main.css index 243ccdae..46420eed 100644 --- a/Frontend-Learner/assets/css/main.css +++ b/Frontend-Learner/assets/css/main.css @@ -9,8 +9,8 @@ /* Colors - Light Mode Default */ --bg-body: #f8fafc; --bg-surface: #ffffff; - --text-main: #0f172a; /* Dark Text */ - --text-secondary: #64748b; /* Secondary Text */ + --text-main: #000000; /* ดำสนิทสำหรับหัวข้อ */ + --text-secondary: #111827; /* เทาเข้มมากสำหรับคำอธิบาย */ --primary: #3b82f6; /* Primary Blue */ /* Semantic mappings */ diff --git a/Frontend-Learner/components/course/CourseCard.vue b/Frontend-Learner/components/course/CourseCard.vue index 0b12ded6..84ef2dd6 100644 --- a/Frontend-Learner/components/course/CourseCard.vue +++ b/Frontend-Learner/components/course/CourseCard.vue @@ -106,7 +106,7 @@ const displayDescription = computed(() => getLocalizedText(props.description))
- {{ $t('course.progress') }} + {{ $t('course.progress') }} {{ progress }}%
diff --git a/Frontend-Learner/components/layout/AppHeader.vue b/Frontend-Learner/components/layout/AppHeader.vue new file mode 100644 index 00000000..dc65c0ee --- /dev/null +++ b/Frontend-Learner/components/layout/AppHeader.vue @@ -0,0 +1,81 @@ + + + + + diff --git a/Frontend-Learner/components/layout/AppSidebar.vue b/Frontend-Learner/components/layout/AppSidebar.vue new file mode 100644 index 00000000..edb71d2e --- /dev/null +++ b/Frontend-Learner/components/layout/AppSidebar.vue @@ -0,0 +1,90 @@ + + + + + diff --git a/Frontend-Learner/components/layout/LandingHeader.vue b/Frontend-Learner/components/layout/LandingHeader.vue new file mode 100644 index 00000000..105f0718 --- /dev/null +++ b/Frontend-Learner/components/layout/LandingHeader.vue @@ -0,0 +1,129 @@ + + + + + diff --git a/Frontend-Learner/components/layout/MobileNav.vue b/Frontend-Learner/components/layout/MobileNav.vue new file mode 100644 index 00000000..e61c6ed3 --- /dev/null +++ b/Frontend-Learner/components/layout/MobileNav.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/Frontend-Learner/composables/useThemeMode.ts b/Frontend-Learner/composables/useThemeMode.ts index c7fa778a..ec01317a 100644 --- a/Frontend-Learner/composables/useThemeMode.ts +++ b/Frontend-Learner/composables/useThemeMode.ts @@ -13,17 +13,7 @@ export const useThemeMode = () => { localStorage.setItem('theme', value ? 'dark' : 'light') } - const initTheme = () => { - if (!process.client) return - const saved = localStorage.getItem('theme') // 'dark' | 'light' | null - const prefersDark = window.matchMedia?.('(prefers-color-scheme: dark)')?.matches ?? false - const value = saved ? saved === 'dark' : prefersDark - isDark.value = value - applyTheme(value) - } - - onMounted(initTheme) watch(isDark, (v) => applyTheme(v)) diff --git a/Frontend-Learner/pages/browse/discovery.vue b/Frontend-Learner/pages/browse/discovery.vue index 24762653..5b784688 100644 --- a/Frontend-Learner/pages/browse/discovery.vue +++ b/Frontend-Learner/pages/browse/discovery.vue @@ -283,15 +283,15 @@ onMounted(() => {

-
-

+
+

{{ $t('course.courseContent') }}

-
-
-
+
+
+
Chapter {{ Number(index) + 1 }} {{ getLocalizedText(chapter.title) }}
@@ -300,13 +300,13 @@ onMounted(() => {
-
-
+
+
-
+
{{ Number(lIndex) + 1 }}
- {{ getLocalizedText(lesson.title) }} + {{ getLocalizedText(lesson.title) }}
{{ lesson.duration_minutes || 0 }}:00
diff --git a/Frontend-Learner/pages/browse/opencovery.vue b/Frontend-Learner/pages/browse/opencovery.vue deleted file mode 100644 index df486d9e..00000000 --- a/Frontend-Learner/pages/browse/opencovery.vue +++ /dev/null @@ -1,170 +0,0 @@ - - - - - diff --git a/Frontend-Learner/pages/classroom/learning.vue b/Frontend-Learner/pages/classroom/learning.vue index e751a930..936bdd92 100644 --- a/Frontend-Learner/pages/classroom/learning.vue +++ b/Frontend-Learner/pages/classroom/learning.vue @@ -255,7 +255,7 @@ onBeforeUnmount(() => { {{ $t('classroom.backToDashboard') }} - + {{ courseData ? getLocalizedText(courseData.course.title) : $t('classroom.loadingTitle') }} @@ -279,7 +279,7 @@ onBeforeUnmount(() => {