_persistentData = $persistentData; $this->_persistentSession = $persistentSession; $this->serializer = $serializer ?: \Magento\Framework\App\ObjectManager::getInstance() ->get(\Magento\Framework\Serialize\Serializer\Json::class); } /** * 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 = $this->serializer->unserialize($content); } $isRememberMeChecked = empty($requestData['persistent_remember_me']) ? false : true; $this->_persistentSession->setRememberMeChecked((bool)$isRememberMeChecked); } } }