Jarves\Controller\Admin\UITranslationsController::getLanguageAction PHP Метод

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

public getLanguageAction ( FOS\RestBundle\Request\ParamFetcher $paramFetcher ) : array | string
$paramFetcher FOS\RestBundle\Request\ParamFetcher
Результат array | string depends on javascript param
    public function getLanguageAction(ParamFetcher $paramFetcher)
    {
        $lang = $paramFetcher->get('lang');
        $javascript = $paramFetcher->get('javascript');
        if (!$this->translator->isValidLanguage($lang)) {
            $lang = 'en';
        }
        $this->pageStack->getSession()->set('admin_language', $lang);
        $messages = $this->translator->loadMessages($lang);
        if ($javascript) {
            $response = new Response();
            $response->headers->set('Content-Type', 'text/javascript');
            $content = "if( typeof(jarves)=='undefined') window.jarves = {}; jarves.lang = " . json_encode($messages, JSON_PRETTY_PRINT);
            $content .= "\nLocale.define('en-US', 'Date', " . $this->templating->render('JarvesBundle:Default:javascript-locales.js.twig') . ");";
            $response->setContent($content);
            return $response;
        } else {
            $messages['mootools'] = $this->templating->render('JarvesBundle:Default:javascript-locales.js.twig');
            return $messages;
        }
    }