From f0e4a94dfcdc24e715efcd76afd36be71e29bb6b Mon Sep 17 00:00:00 2001 From: sebseb7 Date: Wed, 18 Mar 2026 06:59:20 +0100 Subject: [PATCH] feat: normalize delivery methods in CartTab and DeliveryMethodSelector components --- src/components/Footer.js | 37 ++++++++++++++++++- src/components/profile/CartTab.js | 14 +++++-- src/components/profile/CheckoutForm.js | 2 +- .../profile/DeliveryMethodSelector.js | 8 ---- 4 files changed, 47 insertions(+), 14 deletions(-) diff --git a/src/components/Footer.js b/src/components/Footer.js index 0cb3c4b..de24ec8 100644 --- a/src/components/Footer.js +++ b/src/components/Footer.js @@ -345,10 +345,45 @@ class Footer extends Component { {/* Copyright Section */} - + {this.props.t ? this.props.t('footer.allPricesIncl') : '* Alle Preise inkl. gesetzlicher USt., zzgl. Versand'} + + Made with + + jB + + + jBuddy.de + + © {new Date().getFullYear()} GrowHeads.de diff --git a/src/components/profile/CartTab.js b/src/components/profile/CartTab.js index ab19306..3d65616 100644 --- a/src/components/profile/CartTab.js +++ b/src/components/profile/CartTab.js @@ -8,6 +8,8 @@ import CheckoutValidation from "./CheckoutValidation.js"; import { withI18n } from "../../i18n/index.js"; class CartTab extends Component { + normalizeDeliveryMethod = (deliveryMethod) => (deliveryMethod === "DPD" ? "DHL" : deliveryMethod); + constructor(props) { super(props); @@ -107,10 +109,12 @@ class CartTab extends Component { // Map delivery method values if needed const deliveryMethodMap = { "standard": "DHL", - "express": "DPD", + "express": "DHL", "pickup": "Abholung" }; - prefillDeliveryMethod = deliveryMethodMap[prefillDeliveryMethod] || prefillDeliveryMethod; + prefillDeliveryMethod = this.normalizeDeliveryMethod( + deliveryMethodMap[prefillDeliveryMethod] || prefillDeliveryMethod + ); // Determine payment method - respect constraints let prefillPaymentMethod = template.payment_method || "wire"; @@ -168,7 +172,9 @@ class CartTab extends Component { const cartItems = Array.isArray(window.cart) ? window.cart : []; const shouldForcePickup = CheckoutValidation.shouldForcePickupDelivery(cartItems); - const newDeliveryMethod = shouldForcePickup ? "Abholung" : this.state.deliveryMethod; + const newDeliveryMethod = shouldForcePickup + ? "Abholung" + : this.normalizeDeliveryMethod(this.state.deliveryMethod); const deliveryCost = this.orderService.getDeliveryCost(); // Get optimal payment method for the current state @@ -215,7 +221,7 @@ class CartTab extends Component { }; handleDeliveryMethodChange = (event) => { - const newDeliveryMethod = event.target.value; + const newDeliveryMethod = this.normalizeDeliveryMethod(event.target.value); const deliveryCost = this.orderService.getDeliveryCost(); // Get optimal payment method for the new delivery method diff --git a/src/components/profile/CheckoutForm.js b/src/components/profile/CheckoutForm.js index 8eefb87..5c39691 100644 --- a/src/components/profile/CheckoutForm.js +++ b/src/components/profile/CheckoutForm.js @@ -96,7 +96,7 @@ class CheckoutForm extends Component { cartItems={cartItems} /> - {(deliveryMethod === "DHL" || deliveryMethod === "DPD") && ( + {deliveryMethod === "DHL" && ( <>