diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/utils/cart.js | 6 | ||||
| -rw-r--r-- | src/lib/product/components/Product/ProductDesktop.jsx | 23 |
2 files changed, 18 insertions, 11 deletions
diff --git a/src/core/utils/cart.js b/src/core/utils/cart.js index dcb104f9..598f4a74 100644 --- a/src/core/utils/cart.js +++ b/src/core/utils/cart.js @@ -35,8 +35,10 @@ const addCart = async (product_id, qty, selected, programLineId = null, source) 'product_id' : product_id, 'qty' : qty, 'selected' : selected, - 'program_line_id' : programLineId, - 'source' : source + 'program_line_id' : programLineId + } + if(source){ + data.source = source } const id = getAuth()?.id diff --git a/src/lib/product/components/Product/ProductDesktop.jsx b/src/lib/product/components/Product/ProductDesktop.jsx index 9be65bfb..cf4d9b0d 100644 --- a/src/lib/product/components/Product/ProductDesktop.jsx +++ b/src/lib/product/components/Product/ProductDesktop.jsx @@ -72,25 +72,28 @@ const ProductDesktop = ({ products, wishlist, toggleWishlist }) => { return isValid } - const updateCart = (variantId, quantity) => { + const updateCart = (variantId, quantity, source) => { + let dataUpdate if (product.variants.length > 1) { let variantIndex = product.variants.findIndex((varian) => varian.id == variantId) - updateItemCart({ + dataUpdate = { productId: variantId, quantity, programLineId: product.variants[variantIndex].programActive, selected: true, - source: 'buy' - }) + source : source === 'buy' ? 'buy' : null + } + } else { - updateItemCart({ + dataUpdate = { productId: variantId, quantity, programLineId: promotionActiveId, selected: true, - source: 'buy' - }) + source : source === 'buy' ? 'buy' : null + } } + updateItemCart(dataUpdate) } const handleAddToCart = (variantId) => { @@ -102,7 +105,8 @@ const ProductDesktop = ({ products, wishlist, toggleWishlist }) => { if (!validQuantity(quantity)) return - updateCart(variantId, quantity) + let source = 'cart' + updateCart(variantId, quantity, source) setAddCartAlert(true) } @@ -110,7 +114,8 @@ const ProductDesktop = ({ products, wishlist, toggleWishlist }) => { const quantity = variantQuantityRefs.current[variant].value if (!validQuantity(quantity)) return - updateCart(variant, quantity) + let source = 'buy' + updateCart(variant, quantity, source) router.push(`/shop/checkout?source=buy`) } |
