Chris@0: languageManager && $request && $request->server->get('HTTP_ACCEPT_LANGUAGE')) { Chris@0: $http_accept_language = $request->server->get('HTTP_ACCEPT_LANGUAGE'); Chris@0: $langcodes = array_keys($this->languageManager->getLanguages()); Chris@0: $mappings = $this->config->get('language.mappings')->get('map'); Chris@0: $langcode = UserAgent::getBestMatchingLangcode($http_accept_language, $langcodes, $mappings); Chris@0: } Chris@0: Chris@18: // Internal page cache with multiple languages and browser negotiation Chris@18: // could lead to wrong cached sites. Therefore disabling the internal page Chris@18: // cache. Chris@18: // @todo Solve more elegantly in https://www.drupal.org/node/2430335. Chris@18: \Drupal::service('page_cache_kill_switch')->trigger(); Chris@18: Chris@0: return $langcode; Chris@0: } Chris@0: Chris@0: }