/** * 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); } } }
/** * 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 $request \Magento\Framework\App\RequestInterface */ $request = $observer->getEvent()->getRequest(); if ($request && $request->isXmlHttpRequest()) { $requestData = []; $content = $request->getContent(); if ($content) { $requestData = \Zend_Json::decode($content); } $isRememberMeChecked = empty($requestData['persistent_remember_me']) ? false : true; $this->_persistentSession->setRememberMeChecked((bool) $isRememberMeChecked); } }
/** * Check if "Remember Me" checked * * @return bool */ public function isRememberMeChecked() { if (is_null($this->_isRememberMeChecked)) { //Try to get from checkout session $isRememberMeChecked = $this->_checkoutSession->getRememberMeChecked(); if (!is_null($isRememberMeChecked)) { $this->_isRememberMeChecked = $isRememberMeChecked; $this->_checkoutSession->unsRememberMeChecked(); return $isRememberMeChecked; } return $this->_persistentData->isEnabled() && $this->_persistentData->isRememberMeEnabled() && $this->_persistentData->isRememberMeCheckedDefault(); } return (bool) $this->_isRememberMeChecked; }
/** * {@inheritdoc} */ public function getConfig() { $isCheckboxVisible = $this->persistentHelper->isEnabled() && $this->persistentHelper->isRememberMeEnabled(); $isCheckboxChecked = $this->persistentHelper->isRememberMeCheckedDefault(); return ['persistenceConfig' => ['isRememberMeCheckboxVisible' => $isCheckboxVisible, 'isRememberMeCheckboxChecked' => $isCheckboxChecked]]; }
/** * Is "Remember Me" checked * * @return bool */ public function isRememberMeChecked() { return $this->_persistentData->isEnabled() && $this->_persistentData->isRememberMeEnabled() && $this->_persistentData->isRememberMeCheckedDefault(); }