/** * Customer logout action * * @return \Magento\Framework\Controller\Result\Redirect */ public function execute() { $lastCustomerId = $this->session->getId(); $this->session->logout()->setBeforeAuthUrl($this->_redirect->getRefererUrl())->setLastCustomerId($lastCustomerId); /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); $resultRedirect->setPath('*/*/logoutSuccess'); return $resultRedirect; }
/** * Customer logout action * * @return \Magento\Framework\Controller\Result\Redirect */ public function execute() { $lastCustomerId = $this->session->getId(); $this->session->logout()->setBeforeAuthUrl($this->_redirect->getRefererUrl())->setLastCustomerId($lastCustomerId); if ($this->getCookieManager()->getCookie('mage-cache-sessid')) { $metadata = $this->getCookieMetadataFactory()->createCookieMetadata(); $metadata->setPath('/'); $this->getCookieManager()->deleteCookie('mage-cache-sessid', $metadata); } /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); $resultRedirect->setPath('*/*/logoutSuccess'); return $resultRedirect; }
/** * @return Collection */ public function getWishlist() { if (!$this->_wishlist) { $this->_wishlist = $this->_createWishList()->loadByCustomerId($this->_customerSession->getId()); $this->_wishlist->getItemCollection()->addAttributeToSelect('name')->addAttributeToSelect('price')->addAttributeToSelect('small_image')->addAttributeToFilter('store_id', ['in' => $this->_wishlist->getSharedStoreIds()])->addAttributeToSort('added_at', 'desc')->setCurPage(1)->setPageSize(3)->load(); } return $this->_wishlist->getItemCollection(); }
/** * @return void */ protected function _construct() { /* * setting cache to save the rss for 10 minutes */ $this->setCacheKey('rss_catalog_category_' . $this->getRequest()->getParam('cid') . '_' . $this->getRequest()->getParam('store_id') . '_' . $this->customerSession->getId()); $this->setCacheLifetime(600); }
/** * Instantiate current payment and put it into registry * * @return \Magento\RecurringPayment\Model\Payment * @throws \Magento\Framework\Model\Exception */ protected function _initPayment() { $payment = $this->_objectManager->create('Magento\\RecurringPayment\\Model\\Payment')->load($this->getRequest()->getParam('payment')); if (!$payment->getId() || $payment->getCustomerId() != $this->_customerSession->getId()) { throw new \Magento\Framework\Model\Exception(__('We can\'t find the payment you specified.')); } $this->_coreRegistry->register('current_recurring_payment', $payment); return $payment; }
/** * Dispatch request * * @return ResponseInterface */ public function execute() { $facebookHelper = $this->facebook->getRedirectLoginHelper(); try { $accessToken = $facebookHelper->getAccessToken(); if (isset($accessToken)) { $facebookUser = $this->facebook->get('/me?fields=' . static::FIELDS, $accessToken)->getGraphUser(); $customer = $this->customerRepository->getByFacebookId($facebookUser->getId()); if ($this->customerSession->getId()) { $this->customer = $this->customerSession->getCustomerData(); $this->createOrUpdateAndLogin($facebookUser, $accessToken); $this->messageManager->addSuccess(__("Your Facebook account is now connected to your account at our store.")); } else { if (!is_null($customer)) { $this->customer = $customer; $this->createOrUpdateAndLogin($facebookUser, $accessToken); $this->messageManager->addSuccess(__("You have successfully logged in using your Facebook account.")); } else { try { $this->customer = $this->customerRepository->get($facebookUser->getEmail()); } finally { $customer = $this->createOrUpdateAndLogin($facebookUser, $accessToken); if ($this->customer->getId() == $customer->getId()) { $this->messageManager->addSuccess(__("We have discovered you already have an account at our store." . " Your Facebook account is now connected to your store account.")); } else { $this->messageManager->addSuccess(__("Your Facebook account is now connected to your new user account at our store.")); } } } } } else { throw new FacebookSDKException('The Facebook code is null'); } } catch (FacebookSDKException $e) { $this->logger->addError($e->getMessage()); $this->messageManager->addError(__("Oops. Something went wrong! Please try again later.")); } catch (InputException $e) { $this->logger->addError($e->getMessage()); $this->messageManager->addError(__("Some of required values is not received. Please, check your Facebook settings." . "Required fields: email, first name, last name.")); } catch (Exception $e) { $this->logger->addError($e->getMessage()); $this->messageManager->addError(__("Oops. Something went wrong! Please try again later.")); } $this->_redirect($this->_redirect->getRefererUrl()); }
/** * @return void */ protected function _construct() { $this->setCacheKey('rss_catalog_category_' . $this->getRequest()->getParam('cid') . '_' . $this->getStoreId() . '_' . $this->customerSession->getId()); parent::_construct(); }
/** * Returns customer id from session * * @return int|null */ public function getCustomerId() { return $this->customerSession->getId(); }