User::getPreferredLangcode

User::getPreferredLangcode($fallback_to_default = TRUE)

Returns the preferred language code of the account.

Parameters

bool $fallback_to_default: (optional) Whether the return value will fall back to the site default language if the user has no language preference.

Return value

string The language code that is preferred by the account. If the preferred language is not set or is a language not configured anymore on the site, the site default is returned or an empty string is returned (if $fallback_to_default is FALSE).

Overrides AccountInterface::getPreferredLangcode

File

core/modules/user/src/Entity/User.php, line 311

Class

User
Defines the user entity class.

Namespace

Drupal\user\Entity

Code

function getPreferredLangcode($fallback_to_default = TRUE) {
  $language_list = $this->languageManager()->getLanguages();
  $preferred_langcode = $this->get('preferred_langcode')->value;
  if (!empty($preferred_langcode) && isset($language_list[$preferred_langcode])) {
    return $language_list[$preferred_langcode]->getId();
  }
  else {
    return $fallback_to_default ? $this->languageManager()->getDefaultLanguage()->getId() : '';
  }
}
doc_Drupal
2016-10-29 09:52:07
Comments
Leave a Comment

Please login to continue.