LanguageNegotiator::negotiateLanguage

protected LanguageNegotiator::negotiateLanguage($type, $method_id)

Performs language negotiation using the specified negotiation method.

Parameters

string $type: The language type to be initialized.

string $method_id: The string identifier of the language negotiation method to use to detect language.

Return value

\Drupal\Core\Language\LanguageInterface|null Negotiated language object for given type and method, FALSE otherwise.

File

core/modules/language/src/LanguageNegotiator.php, line 181

Class

LanguageNegotiator
Class responsible for performing language negotiation.

Namespace

Drupal\language

Code

protected function negotiateLanguage($type, $method_id) {
  $langcode = NULL;
  $method = $this->negotiatorManager->getDefinition($method_id);

  if (!isset($method['types']) || in_array($type, $method['types'])) {
    $langcode = $this->getNegotiationMethodInstance($method_id)->getLangcode($this->requestStack->getCurrentRequest());
  }

  $languages = $this->languageManager->getLanguages();
  return isset($languages[$langcode]) ? $languages[$langcode] : NULL;
}
doc_Drupal
2016-10-29 09:22:52
Comments
Leave a Comment

Please login to continue.