Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
UpdateQuoteStore.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
14 
19 {
23  private $quoteRepository;
24 
28  private $checkoutSession;
29 
34  public function __construct(
35  QuoteRepository $quoteRepository,
36  Session $checkoutSession
37  ) {
38  $this->quoteRepository = $quoteRepository;
39  $this->checkoutSession = $checkoutSession;
40  }
41 
51  public function afterSetStoreCookie(
53  $result,
55  ) {
56  $storeCodeFromCookie = $subject->getStoreCodeFromCookie();
57  if (null === $storeCodeFromCookie) {
58  return;
59  }
60 
61  $quote = $this->checkoutSession->getQuote();
62  if ($quote->getIsActive() && $store->getCode() != $storeCodeFromCookie) {
63  $quote->setStoreId(
64  $store->getId()
65  );
66  $this->quoteRepository->save($quote);
67  }
68  }
69 }
__construct(QuoteRepository $quoteRepository, Session $checkoutSession)
afterSetStoreCookie(StoreCookieManagerInterface $subject, $result, StoreInterface $store)
$quote
$quoteRepository