<?php declare(strict_types=1);
namespace Okeonline\KejeDeliveryDatePicker\Storefront\Subscriber;
use Okeonline\KejeDeliveryDatePicker\Storefront\Subscriber\Traits\AddsWeeknumbersToPage;
use Okeonline\KejeDeliveryDatePicker\Storefront\Subscriber\Traits\GetsSelectedWeeknumberFromCart;
use Shopware\Storefront\Page\Checkout\Confirm\CheckoutConfirmPageLoadedEvent;
use Shopware\Storefront\Page\Checkout\Offcanvas\OffcanvasCartPageLoadedEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class OffcanvasCartPageLoadedEventSubscriber implements EventSubscriberInterface
{
public static function getSubscribedEvents(): array
{
return [
OffcanvasCartPageLoadedEvent::class => 'removeDeliveryDateFromCartViews'
];
}
public function removeDeliveryDateFromCartViews(OffcanvasCartPageLoadedEvent $event)
{
$page = $event->getPage();
$cartLineItems = $page->getCart()->getLineItems();
$deliveryDateItems = $cartLineItems->filterFlatByType('deliveryDate');
if(count($deliveryDateItems) > 0)
{
foreach($deliveryDateItems as $deliveryDateItem)
{
$cartLineItems->remove($deliveryDateItem->getId());
}
}
}
}