import React, { useState, useEffect } from 'react'; import ProductDetailPage from '../ProductDetailPage'; import Login from '../Login'; import styles from '../Styles.module.css'; const CoursePage = ({ subscriptions }) => { const [postLoginAction, setPostLoginAction] = useState(null); const [selectedProduct, setSelectedProduct] = useState({}); const [hoveredCard, setHoveredCard] = useState(null); const [showedModal, setShowedModal] = useState(null); const [products, setProducts] = useState([]); useEffect(() => { if (!subscriptions) return; // Step 1: Group subscriptions by product_name function groupSubscriptionsByProductName(subs) { const result = {}; subs.forEach(sub => { const name = sub.product_name; const productId = sub.product_id; if (!result[name]) { result[name] = { product_id: productId, product_name: name, unit_type: sub.unit_type, end_date: sub.end_date, quantity: 0, subscriptions: [] }; } // Update end_date jika lebih baru const currentEnd = new Date(result[name].end_date); const thisEnd = new Date(sub.end_date); if (thisEnd > currentEnd) { result[name].end_date = sub.end_date; } // Tambahkan quantity jika unit_type adalah 'token' if (sub.unit_type == 'token') { result[name].quantity += sub.quantity ?? 0; } else { result[name].quantity += 1; // Bisa diabaikan atau tetap hitung 1 per subscription } result[name].subscriptions.push(sub); }); return result; } const groupedSubs = groupSubscriptionsByProductName(subscriptions); // Step 2: Ambil semua unique product_id (tetap diperlukan untuk ambil metadata dari API) const productIds = [...new Set(subscriptions.map(s => s.product_id))]; // Step 3: Fetch product metadata fetch('https://bot.kediritechnopark.com/webhook/store-dev/products', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ itemsId: productIds }), }) .then(res => res.json()) .then(data => { const enrichedData = Object.values(groupedSubs) .filter(group => data.some(p => p.id === group.product_id)) // ✅ hanya produk yang ada di metadata .map(group => { const productData = data.find(p => p.id == group.product_id); // Cek fallback image dari parent jika image kosong dan sub_product_of ada let image = productData?.image || ''; let description = productData?.description || ''; if (!image && productData?.sub_product_of) { const parent = data.find(p => p.id === productData.sub_product_of); image = parent?.image || ''; description = parent?.description || ''; } return { id: group.product_id, name: group.product_name, type: productData?.type || 'product', image: image, description: description, price: productData?.price || 0, currency: productData?.currency || 'IDR', duration: productData?.duration || {}, sub_product_of: productData?.sub_product_of || null, is_visible: productData?.is_visible ?? true, unit_type: productData?.unit_type || group.unit_type, quantity: group.quantity, end_date: group.end_date, children: [] }; }); console.log(enrichedData) setProducts(enrichedData); console.log('Enriched Data:', enrichedData); }) .catch(err => console.error('Fetch error:', err)); }, [subscriptions]); const features = [ { icon: '🌐', title: 'Belajar Langsung dari Mentor Terbaik', description: 'Kursus kami dirancang dan dipandu oleh para praktisi, pengajar, dan mentor yang ahli di bidangnya—mulai dari bisnis digital, teknologi, desain, hingga kecerdasan buatan. Semua materi disemakan dengan bahasa yang sederhana, mudah dipahami, dan langsung bisa dipraktikkan.', }, { icon: '⏰', title: 'Fleksibel Sesuai Gaya Hidupmu', description: 'Sibuk kerja? Urus anak? Atau lagi nyantai belajar Teknilog, di Akademi ini kamu bisa belajar kapan saja di mana saja, tanpa terikat waktu. Semua kursus kami bisa diakses ulang dan kamu bebas atur ritme belajar mu sendiri. Bebas lekukan, makamali ngatif.', }, { icon: '⚡', title: 'Belajar Cepat, Dampak Nyata', description: 'Kami percaya proses belajar tidak harus lama lama! Dengan pendekatan yang tepat, kamu bisa menguasai keterampilan baru hanya dalam hitungan minggu—buken bulan! Mulai dari belajar desain, digital marketing, AI, hingga manajemen usaha, semua bisa kamu kuasai dengan cepat dan tepat guna.', }, ]; return (
{product.description}
Di era digital yang terus berubah, Akademi kami hadir sebagai ruang tumbuh untuk siapa saja yang ingin berkembang. Baik pelajar, profesional, UMKM, hingga pemula teknologi—kami bantu kamu naik level dengan materi praktis, akses mudah, dan komunitas suportif.
{feature.description}
Ambil langkah pertama menuju karier impian atau hobi barumu bersama Akademi Kami. Belajar dengan cara yang menyenangkan, fleksibel, dan penuh manfaat.
Ajarkan apa yang kamu cintai. Akademi kami memberikan semua alat dan dukungan yang kamu butuhkan untuk membuat kursusmu sendiri.