function language_from_user_admin

Identifies admin language from the user preferences.

Parameters

$languages: An array of valid language objects.

\Symfony\Component\HttpFoundation\Request|null $request: (optional) The HttpRequest object representing the current request. Defaults to NULL.

Return value

A valid language code on success, FALSE otherwise.

1 string reference to 'language_from_user_admin'

File

drupal/core/modules/language/language.negotiation.inc, line 220
Language negotiation functions.

Code

function language_from_user_admin(array $languages, Request $request = NULL) {

  // User preference (only for authenticated users).
  global $user;
  $request_path = $request ? urldecode(trim($request
    ->getPathInfo(), '/')) : _current_path();
  if ($user->uid && !empty($user->preferred_admin_langcode) && isset($languages[$user->preferred_admin_langcode]) && path_is_admin($request_path)) {
    return $user->preferred_admin_langcode;
  }

  // No language preference from the user or not on an admin path.
  return FALSE;
}