Exemple #1
0
 /**
  * Returns the locale item for the current request
  *
  * @param \Aimeos\MShop\Context\Item\Iface $context Context object
  * @param \TYPO3\Flow\Mvc\RequestInterface $request Request object
  * @return \Aimeos\MShop\Locale\Item\Iface Locale item object
  */
 public function get(\Aimeos\MShop\Context\Item\Iface $context, \TYPO3\Flow\Mvc\RequestInterface $request)
 {
     if ($this->locale === null) {
         $params = $request->getArguments();
         $site = isset($params['site']) ? $params['site'] : 'default';
         $lang = isset($params['locale']) ? $params['locale'] : '';
         $currency = isset($params['currency']) ? $params['currency'] : '';
         $disableSites = (bool) (isset($this->settings['flow']['disableSites']) ? $this->settings['flow']['disableSites'] : true);
         $localeManager = \Aimeos\MShop\Locale\Manager\Factory::createManager($context);
         $this->locale = $localeManager->bootstrap($site, $lang, $currency, $disableSites);
     }
     return $this->locale;
 }
Exemple #2
0
 /**
  * Returns the fixed parameters that should be included in every URL
  *
  * @param \TYPO3\Flow\Mvc\RequestInterface $request Request object
  * @return array Associative list of site, language and currency if available
  */
 protected function getFixedParams(\TYPO3\Flow\Mvc\RequestInterface $request)
 {
     $fixed = array();
     $params = $request->getArguments();
     if (isset($params['site'])) {
         $fixed['site'] = $params['site'];
     }
     if (isset($params['locale'])) {
         $fixed['locale'] = $params['locale'];
     }
     if (isset($params['currency'])) {
         $fixed['currency'] = $params['currency'];
     }
     return $fixed;
 }
Exemple #3
0
 /**
  * Adds the "url" helper to the view object
  *
  * @param \Aimeos\MW\View\Iface $view View object
  * @param \TYPO3\Flow\Mvc\Routing\UriBuilder $uriBuilder URL builder object
  * @param \TYPO3\Flow\Mvc\RequestInterface|null $request Request object
  * @return \Aimeos\MW\View\Iface Modified view object
  */
 protected function addUrl(\Aimeos\MW\View\Iface $view, \TYPO3\Flow\Mvc\Routing\UriBuilder $uriBuilder, \TYPO3\Flow\Mvc\RequestInterface $request = null)
 {
     $fixed = array();
     if ($request !== null) {
         $params = $request->getArguments();
         if (isset($params['site'])) {
             $fixed['site'] = $params['site'];
         }
         if (isset($params['locale'])) {
             $fixed['locale'] = $params['locale'];
         }
         if (isset($params['currency'])) {
             $fixed['currency'] = $params['currency'];
         }
     }
     $helper = new \Aimeos\MW\View\Helper\Url\Flow($view, $uriBuilder, $fixed);
     $view->addHelper('url', $helper);
     return $view;
 }
Exemple #4
0
 /**
  * Returns the locale item for the current request
  *
  * @param \MShop_Context_Item_Interface $context Context object
  * @param \TYPO3\Flow\Mvc\RequestInterface $request Request object
  * @return \MShop_Locale_Item_Interface Locale item object
  */
 protected function getLocale(\MShop_Context_Item_Interface $context, \TYPO3\Flow\Mvc\RequestInterface $request)
 {
     if ($this->locale === null) {
         $params = $request->getArguments();
         $site = isset($params['site']) ? $params['site'] : 'default';
         $lang = isset($params['locale']) ? $params['locale'] : '';
         $currency = isset($params['currency']) ? $params['currency'] : '';
         $disableSites = (bool) (isset($this->settings['flow']['disableSites']) ? $this->settings['flow']['disableSites'] : false);
         $localeManager = \MShop_Locale_Manager_Factory::createManager($context);
         $this->locale = $localeManager->bootstrap($site, $lang, $currency, $disableSites);
     }
     return $this->locale;
 }