ok
This commit is contained in:
@@ -32,13 +32,6 @@ const Header = ({ username, scrollToProduct, scrollToCourse, setShowedModal, han
|
|||||||
>
|
>
|
||||||
{username ? 'MY PRODUCTS' : 'PRODUCTS'}
|
{username ? 'MY PRODUCTS' : 'PRODUCTS'}
|
||||||
</a>
|
</a>
|
||||||
<a
|
|
||||||
className={`${styles.navLink} ${hoveredNav === 4 ? styles.navLinkHover : ''}`}
|
|
||||||
onMouseEnter={() => setHoveredNav(4)}
|
|
||||||
onMouseLeave={() => setHoveredNav(null)}
|
|
||||||
>
|
|
||||||
USER
|
|
||||||
</a>
|
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
{/* Burger Menu Button */}
|
{/* Burger Menu Button */}
|
||||||
@@ -51,7 +44,7 @@ const Header = ({ username, scrollToProduct, scrollToCourse, setShowedModal, han
|
|||||||
<div className={styles.mobileMenu}>
|
<div className={styles.mobileMenu}>
|
||||||
{username ? (
|
{username ? (
|
||||||
<>
|
<>
|
||||||
<div className={styles.username}>Halo, {username}</div>
|
<div className={styles.username}>{username}</div>
|
||||||
|
|
||||||
<button className={styles.logoutButton} onClick={() => {
|
<button className={styles.logoutButton} onClick={() => {
|
||||||
navigate('/products');
|
navigate('/products');
|
||||||
@@ -84,7 +77,7 @@ const Header = ({ username, scrollToProduct, scrollToCourse, setShowedModal, han
|
|||||||
<div className={styles.authButtons}>
|
<div className={styles.authButtons}>
|
||||||
{username && (
|
{username && (
|
||||||
<div className={styles.loggedInContainer}>
|
<div className={styles.loggedInContainer}>
|
||||||
<span className={styles.username}>Halo, {username}</span>
|
<span className={styles.username}>{username}</span>
|
||||||
<button className={styles.logoutButton} onClick={handleLogout}>Logout</button>
|
<button className={styles.logoutButton} onClick={handleLogout}>Logout</button>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -66,14 +66,23 @@ const CoursePage = ({ subscriptions }) => {
|
|||||||
})
|
})
|
||||||
.then(res => res.json())
|
.then(res => res.json())
|
||||||
.then(data => {
|
.then(data => {
|
||||||
const enrichedData = Object.values(groupedSubs).map(group => {
|
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);
|
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 || '';
|
||||||
|
if (!image && productData?.sub_product_of) {
|
||||||
|
const parent = data.find(p => p.id === productData.sub_product_of);
|
||||||
|
image = parent?.image || '';
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
id: group.product_id,
|
id: group.product_id,
|
||||||
name: group.product_name,
|
name: group.product_name,
|
||||||
type: productData?.type || 'product',
|
type: productData?.type || 'product',
|
||||||
image: productData?.image || '',
|
image: image,
|
||||||
description: productData?.description || '',
|
description: productData?.description || '',
|
||||||
price: productData?.price || 0,
|
price: productData?.price || 0,
|
||||||
currency: productData?.currency || 'IDR',
|
currency: productData?.currency || 'IDR',
|
||||||
@@ -81,11 +90,12 @@ const CoursePage = ({ subscriptions }) => {
|
|||||||
sub_product_of: productData?.sub_product_of || null,
|
sub_product_of: productData?.sub_product_of || null,
|
||||||
is_visible: productData?.is_visible ?? true,
|
is_visible: productData?.is_visible ?? true,
|
||||||
unit_type: productData?.unit_type || group.unit_type,
|
unit_type: productData?.unit_type || group.unit_type,
|
||||||
quantity: group.quantity, // Bisa diganti dengan jumlah token kalau diperlukan
|
quantity: group.quantity,
|
||||||
end_date: group.end_date,
|
end_date: group.end_date,
|
||||||
children: [] // Kosong, bisa diisi jika ada sub-product
|
children: []
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log(enrichedData)
|
console.log(enrichedData)
|
||||||
setProducts(enrichedData);
|
setProducts(enrichedData);
|
||||||
console.log('Enriched Data:', enrichedData);
|
console.log('Enriched Data:', enrichedData);
|
||||||
|
|||||||
Reference in New Issue
Block a user