/** * @param \Magento\Framework\App\ActionInterface $subject * @param callable $proceed * @param \Magento\Framework\App\RequestInterface $request * @return mixed * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function aroundExecute( \Magento\Framework\App\ActionInterface $subject, \Closure $proceed, \Magento\Framework\App\RequestInterface $request ) { /** @var \Magento\Store\Model\Store $defaultStore */ $defaultStore = $this->storeManager->getWebsite()->getDefaultStore(); $requestedStoreCode = $this->httpRequest->getParam( StoreResolverInterface::PARAM_NAME, $this->storeCookieManager->getStoreCodeFromCookie() ); /** @var \Magento\Store\Model\Store $currentStore */ $currentStore = $requestedStoreCode ? $this->storeManager->getStore($requestedStoreCode) : $defaultStore; $this->httpContext->setValue( StoreManagerInterface::CONTEXT_STORE, $currentStore->getCode(), $this->storeManager->getDefaultStoreView()->getCode() ); $this->httpContext->setValue( HttpContext::CONTEXT_CURRENCY, $this->session->getCurrencyCode() ?: $currentStore->getDefaultCurrencyCode(), $defaultStore->getDefaultCurrencyCode() ); return $proceed($request); }
/** * @param \Magento\Framework\App\Action\Action $subject * @param callable $proceed * @param \Magento\Framework\App\RequestInterface $request * @return mixed */ public function aroundDispatch(\Magento\Framework\App\Action\Action $subject, \Closure $proceed, \Magento\Framework\App\RequestInterface $request) { $defaultStore = $this->storeManager->getWebsite()->getDefaultStore(); $this->httpContext->setValue(\Magento\Core\Helper\Data::CONTEXT_CURRENCY, $this->session->getCurrencyCode(), $defaultStore->getDefaultCurrency()->getCode()); $this->httpContext->setValue(\Magento\Core\Helper\Data::CONTEXT_STORE, $this->httpRequest->getParam('___store', $defaultStore->getStoreCodeFromCookie()), $this->storeManager->getWebsite()->getDefaultStore()->getCode()); return $proceed($request); }
/** * Redirects tracking popup to specific URL * @param \Magento\Framework\Event\Observer $observer * * @return $this */ public function execute(\Magento\Framework\Event\Observer $observer) { $shippingInfoModel = $this->_shippingInfoFactory->create()->loadByHash($this->_request->getParam('hash')); if ($url = $this->shipmentHelper->getTrackingUrlByShippingInfo($shippingInfoModel)) { $controller = $observer->getControllerAction(); $controller->getResponse()->setRedirect($url); $this->_actionFlag->set('', \Magento\Framework\App\Action\Action::FLAG_NO_DISPATCH, true); } return $observer; }
/** * @return mixed */ public function getLabel() { if ($this->fieldName == 'discountedPrice') { return str_replace("-", " - ", $this->_request->getParam('bx_discountedPrice')); } return $this->bxFacets->getSelectedValueLabel($this->fieldName); }
/** * @param \Magento\Framework\App\ActionInterface $subject * @param callable $proceed * @param \Magento\Framework\App\RequestInterface $request * @return mixed * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function aroundDispatch(\Magento\Framework\App\ActionInterface $subject, \Closure $proceed, \Magento\Framework\App\RequestInterface $request) { /** @var \Magento\Store\Model\Store $defaultStore */ $defaultStore = $this->storeManager->getWebsite()->getDefaultStore(); $storeCode = $this->httpRequest->getParam(StoreResolverInterface::PARAM_NAME, $this->storeCookieManager->getStoreCodeFromCookie()); if (is_array($storeCode)) { if (!isset($storeCode['_data']['code'])) { throw new \InvalidArgumentException(new Phrase('Invalid store parameter.')); } $storeCode = $storeCode['_data']['code']; } /** @var \Magento\Store\Model\Store $currentStore */ $currentStore = $storeCode ? $this->storeManager->getStore($storeCode) : $defaultStore; $this->httpContext->setValue(StoreManagerInterface::CONTEXT_STORE, $currentStore->getCode(), $this->storeManager->getDefaultStoreView()->getCode()); $this->httpContext->setValue(HttpContext::CONTEXT_CURRENCY, $this->session->getCurrencyCode() ?: $currentStore->getDefaultCurrencyCode(), $defaultStore->getDefaultCurrencyCode()); return $proceed($request); }
/** * Before model save * @param \Magefan\Blog\Model\Post $model * @param \Magento\Framework\App\Request\Http $request * @return void */ protected function _beforeSave($model, $request) { if ($links = $request->getParam('links')) { foreach (array('post', 'product') as $key) { $param = 'related' . $key . 's'; if (!empty($links[$param])) { $ids = array_unique(array_map('intval', explode('&', $links[$param]))); if (count($ids)) { $model->setData('related_' . $key . '_ids', $ids); } } } } }
/** * Return current page from request * * @return int */ public function getCurrentPage() { $page = (int) $this->request->getParam(self::PAGE_PARM_NAME); return $page ? $page : 1; }