diff --git a/01-frontend/src/helper/BasketProvider.tsx b/01-frontend/src/helper/BasketProvider.tsx index 693e27e..63a1320 100644 --- a/01-frontend/src/helper/BasketProvider.tsx +++ b/01-frontend/src/helper/BasketProvider.tsx @@ -34,6 +34,7 @@ export const BasketProvider: React.FC<{ children: React.ReactNode }> = ({ childr }; const clearBasket = () => { + console.log(" BASKET CLEARED BasketProvideur"); setBasket([]); }; diff --git a/01-frontend/src/pages/Payment.tsx b/01-frontend/src/pages/Payment.tsx index bd2eaf7..fd9df5b 100644 --- a/01-frontend/src/pages/Payment.tsx +++ b/01-frontend/src/pages/Payment.tsx @@ -34,12 +34,37 @@ function getDiscountedPrice(item: Item): number { return (item.price100 / 100 * (100-item.discount100)/100); } +function generateBasket(t: any, basket: any[]) { + return basket.length === 0 ? ( + + {t('basketEmpty')} + + ) : ( + + {basket.map((item) => ( + + + + + {`${(item.quantity * getDiscountedPrice(item.item)).toFixed(2)} €`} + {item.item.discount100 > 0 ? {-item.item.discount100}% : ""} + + + ))} + + ) +} + export default function Payment() { + const { t } = useTranslation(); - const navigator = useNavigate(); const { basket, clearBasket } = useBasket(); + const navigator = useNavigate(); const [activeStep, setActiveStep] = useState(0); const [shippingDetails, setShippingDetails] = useState({ firstName: '', @@ -58,7 +83,6 @@ export default function Payment() { // Simulate order placement and generate order number const generatedOrderNumber = `ORD-${Math.floor(Math.random() * 1000000)}`; setOrderNumber(generatedOrderNumber); - clearBasket(); // Clear the basket after placing the order } setActiveStep((prevStep) => prevStep + 1); }; @@ -75,6 +99,7 @@ export default function Payment() { })); }; const handleClearBasket = () => { + console.log(" BASKET CLEARED Payment"); clearBasket(); }; @@ -98,27 +123,7 @@ export default function Payment() { {t('reviewCart')} - {basket.length === 0 ? ( - - {t('basketEmpty')} - - ) : ( - - {basket.map((item) => ( - - - - - {`${(item.quantity * getDiscountedPrice(item.item)).toFixed(2)} €`} - {item.item.discount100 > 0 ? {-item.item.discount100}% : ""} - - - ))} - - )} + {generateBasket(t, basket)} {t('clearCart')} @@ -237,16 +242,7 @@ export default function Payment() { {t('orderedItems')}: - - {basket.map((item) => ( - - - - ))} - + {generateBasket(t, basket)} ); default: @@ -282,6 +278,7 @@ export default function Payment() { variant="contained" color="primary" onClick={() => { + handleClearBasket(); navigator('/'); }} >