/** * 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); }
/** * Set Checked status of "Remember Me" * * @param Observer $observer * @return void */ public function execute(Observer $observer) { if (!$this->_persistentData->canProcess($observer) || !$this->_persistentData->isEnabled() || !$this->_persistentData->isRememberMeEnabled()) { return; } /** @var $controllerAction \Magento\Framework\App\RequestInterface */ $request = $observer->getEvent()->getRequest(); if ($request) { $rememberMeCheckbox = $request->getPost('persistent_remember_me'); $this->_persistentSession->setRememberMeChecked((bool) $rememberMeCheckbox); if ($request->getFullActionName() == 'checkout_onepage_saveBilling' || $request->getFullActionName() == 'customer_account_createpost') { $this->_checkoutSession->setRememberMeChecked((bool) $rememberMeCheckbox); } } }