Hallo,
im Event CheckoutConfirmPageLoadedEvent füge ich per https://developer.shopware.com/docs/guides/plugins/plugins/checkout/cart/add-cart-items.html automatisch einen Artikel zum Warenkorb.
Dazu hole ich mir zuerst alle Produkte im Warenkorb und wenn die $productId des entsprechenden Artikels noch nicht im Warenkorb liegt, füge ich sie hinzu:
foreach ($cart->getLineItems() as $item) {
if ($item->getReferencedId() === $productId) {
$isInCart = 1;
break;
}
}
if ($isInCart === 0) {
$this->createAndAddLineItem($context, $cart);
}
Nun ist das Problem, dass beim Entfernen des automatisch hinzugefügten Artikels auf der Checkout-Seite, diese neu geladen und das Event wieder getriggert wird. Dadurch wird der Artikel sofort wieder zum Warenkorb hinzugefügt.
Wie könnte ich es umsetzen, dass ein Benutzer den Artikel im Checkout entfernen kann?
Danke