Esempio n. 1
0
 /**
  * Creates a new locale object and adds this object to the context.
  *
  * @param string $site Site code
  */
 protected function setLocale($site)
 {
     $context = $this->getContext();
     $locale = $context->getLocale();
     $siteItem = null;
     $siteManager = \Aimeos\MShop\Locale\Manager\Factory::createManager($context)->getSubManager('site');
     if ($site != '') {
         $search = $siteManager->createSearch();
         $search->setConditions($search->compare('==', 'locale.site.code', $site));
         $sites = $siteManager->searchItems($search);
         if (($siteItem = reset($sites)) === false) {
             throw new \Aimeos\Controller\ExtJS\Exception('Site item not found.');
         }
     }
     $localeItem = new \Aimeos\MShop\Locale\Item\Standard(array(), $siteItem);
     $localeItem->setLanguageId($locale->getLanguageId());
     $localeItem->setCurrencyId($locale->getCurrencyId());
     if ($siteItem !== null) {
         $localeItem->setSiteId($siteItem->getId());
     }
     $context->setLocale($localeItem);
 }