public get ( Aimeos\MShop\Context\Item\Iface $context ) : Aimeos\MShop\Locale\Item\Iface | ||
$context | Aimeos\MShop\Context\Item\Iface | Context object |
리턴 | Aimeos\MShop\Locale\Item\Iface | Locale item object |
public function get(\Aimeos\MShop\Context\Item\Iface $context)
{
if ($this->locale === null) {
$site = Route::input('site', Input::get('site', 'default'));
$currency = Route::input('currency', Input::get('currency', ''));
$lang = Route::input('locale', Input::get('locale', ''));
$disableSites = $this->config->get('shop.disableSites', true);
$localeManager = \Aimeos\MShop\Locale\Manager\Factory::createManager($context);
$this->locale = $localeManager->bootstrap($site, $lang, $currency, $disableSites);
}
return $this->locale;
}
/** * Returns the current context * * @param boolean $locale True to add locale object to context, false if not (deprecated, use \Aimeos\Shop\Base\Locale) * @param string $type Configuration type, i.e. "frontend" or "backend" (deprecated, use \Aimeos\Shop\Base\Config) * @return \Aimeos\MShop\Context\Item\Iface Context object */ public function get($locale = true, $type = 'frontend') { $config = $this->config->get($type); if ($this->context === null) { $context = new \Aimeos\MShop\Context\Item\Standard(); $context->setConfig($config); $this->addDataBaseManager($context); $this->addFilesystemManager($context); $this->addMessageQueueManager($context); $this->addLogger($context); $this->addCache($context); $this->addMailer($context); $this->addSession($context); $this->addUser($context); $this->addGroups($context); $this->context = $context; } $this->context->setConfig($config); if ($locale === true) { $localeItem = $this->locale->get($this->context); $this->context->setLocale($localeItem); $this->context->setI18n($this->i18n->get(array($localeItem->getLanguageId()))); } return $this->context; }