From d2b2db90a614545e8cd4e6be84863c5b4385e221 Mon Sep 17 00:00:00 2001
From: Farhaan4 <127176994+Farhaan4@users.noreply.github.com>
Date: Tue, 14 Oct 2025 11:37:54 +0700
Subject: [PATCH] fix kategori
---
.../template-page/CategorySelection.vue | 59 ++++++++-----------
.../components/template-page/TemplateGrid.vue | 50 +++++++++-------
2 files changed, 52 insertions(+), 57 deletions(-)
diff --git a/proyek-frontend/app/components/template-page/CategorySelection.vue b/proyek-frontend/app/components/template-page/CategorySelection.vue
index b142f4a..9d7dcbd 100644
--- a/proyek-frontend/app/components/template-page/CategorySelection.vue
+++ b/proyek-frontend/app/components/template-page/CategorySelection.vue
@@ -29,38 +29,28 @@
Gagal memuat kategori.
-
-
-
-
![]()
-
-
-
- {{ category.nama }}
-
-
- {{ category.deskripsi }}
-
+
+
+
+
![]()
+
+
+
+ {{ category.nama }}
+
+
+ {{ category.deskripsi }}
+
+
+
-
-
-
- Belum ada kategori.
-
+
+ Belum ada kategori.
+
@@ -127,12 +117,11 @@
-
@@ -169,24 +171,26 @@ const fetchTemplates = async (categoryId) => {
})
templates.value = res.map(tpl => {
- // Pastikan nama paket konsisten: 'Starter', 'Basic', 'Premium'
- const paketKey = tpl.paket ? tpl.paket.charAt(0).toUpperCase() + tpl.paket.slice(1).toLowerCase() : 'Starter'
+ const paketKey = tpl.paket
+ ? tpl.paket.charAt(0).toUpperCase() + tpl.paket.slice(1).toLowerCase()
+ : 'Starter'
+
+ return {
+ id: tpl.id,
+ nama_template: tpl.nama_template,
+ slug: tpl.slug,
+ harga: tpl.harga,
+ kategori: tpl.kategori, // pastikan kategori berisi object { nama_kategori }
+ foto: tpl.foto ?? '/logo2.png',
+ paket: paketKey,
+ fiturs: (fiturPerPaket[paketKey] || []).map((f, i) => ({
+ id: i + 1,
+ deskripsi: f
+ })),
+ preview_link: tpl.preview_link ?? null
+ }
+})
- return {
- id: tpl.id,
- nama_template: tpl.nama_template,
- harga: tpl.harga,
- kategori: tpl.kategori,
- foto: tpl.foto ?? '/logo2.png',
- paket: paketKey,
- fiturs: (fiturPerPaket[paketKey] || []).map((f, i) => ({
- id: i + 1,
- deskripsi: f
- })),
- preview_link: tpl.preview_link ?? null,
- formPath: formMapping[tpl.nama_template] || '/form/lainny'
- }
- })
} catch (err) {
console.error(err)
error.value = 'Gagal memuat template.'
@@ -202,6 +206,8 @@ onMounted(() => fetchTemplates(props.id_category))
watch(() => props.id_category, (newId) => {
if (newId) fetchTemplates(newId)
})
+
+