Pimcore\Controller\Action\Admin::setLanguage PHP Метод

setLanguage() публичный Метод

public setLanguage ( $language, boolean $useFrontendLanguages = false )
$language
$useFrontendLanguages boolean
    public function setLanguage($language, $useFrontendLanguages = false)
    {
        if (\Zend_Locale::isLocale($language, true)) {
            $locale = new \Zend_Locale($language);
        } else {
            $locale = new \Zend_Locale("en");
        }
        if ($useFrontendLanguages) {
            // check if given language is a valid language
            if (!Tool::isValidLanguage($locale)) {
                return;
            }
            \Zend_Registry::set("Zend_Locale", $locale);
        } else {
            // check if given language is installed if not => skip
            if (!in_array((string) $locale->getLanguage(), AdminTool::getLanguages())) {
                return;
            }
            \Zend_Registry::set("Zend_Locale", $locale);
            if (\Zend_Registry::isRegistered("Zend_Translate")) {
                $t = \Zend_Registry::get("Zend_Translate");
                if ((string) $locale != (string) $t->getLocale()) {
                    $languageFile = AdminTool::getLanguageFile($locale);
                    $t->addTranslation($languageFile, $locale);
                    $t->setLocale($locale);
                }
            }
        }
        $this->language = (string) $locale;
        $this->view->language = $this->getLanguage();
        return $this;
    }