12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Persistent\Model\Checkout;
- use Magento\Quote\Api\Data\AddressAdditionalDataInterface as AddressAdditionalData;
- use Magento\Persistent\Helper\Session as PersistentSession;
- use Magento\Persistent\Helper\Data as PersistentHelper;
- use Magento\Checkout\Model\Session as CheckoutSession;
- use Magento\Quote\Model\AddressAdditionalDataProcessor;
- class AddressDataProcessorPlugin
- {
- /**
- * @var PersistentSession
- */
- private $persistentSession;
- /**
- * @var PersistentHelper
- */
- private $persistentHelper;
- /**
- * @var CheckoutSession
- */
- private $checkoutSession;
- /**
- * @param PersistentHelper $persistentHelper
- * @param PersistentSession $persistentSession
- * @param CheckoutSession $checkoutSession
- */
- public function __construct(
- PersistentHelper $persistentHelper,
- PersistentSession $persistentSession,
- CheckoutSession $checkoutSession
- ) {
- $this->persistentHelper = $persistentHelper;
- $this->persistentSession = $persistentSession;
- $this->checkoutSession = $checkoutSession;
- }
- /**
- * Process address additional data
- *
- * @param AddressAdditionalDataProcessor $subject
- * @param AddressAdditionalData $additionalData
- * @return void
- * @SuppressWarnings(PHPMD.UnusedFormalParameter)
- */
- public function beforeProcess(AddressAdditionalDataProcessor $subject, AddressAdditionalData $additionalData)
- {
- if (!$this->persistentHelper->isEnabled() || !$this->persistentHelper->isRememberMeEnabled()) {
- return;
- }
- $checkboxStatus = $additionalData->getExtensionAttributes()->getPersistentRememberMe();
- $isRememberMeChecked = empty($checkboxStatus) ? false : true;
- $this->persistentSession->setRememberMeChecked($isRememberMeChecked);
- $this->checkoutSession->setRememberMeChecked($isRememberMeChecked);
- }
- }
|