comparison core/modules/user/src/Plugin/LanguageNegotiation/LanguageNegotiationUser.php @ 17:129ea1e6d783

Update, including to Drupal core 8.6.10
author Chris Cannam
date Thu, 28 Feb 2019 13:21:36 +0000
parents 4c8ae668cc8c
children
comparison
equal deleted inserted replaced
16:c2387f117808 17:129ea1e6d783
28 public function getLangcode(Request $request = NULL) { 28 public function getLangcode(Request $request = NULL) {
29 $langcode = NULL; 29 $langcode = NULL;
30 30
31 // User preference (only for authenticated users). 31 // User preference (only for authenticated users).
32 if ($this->languageManager && $this->currentUser->isAuthenticated()) { 32 if ($this->languageManager && $this->currentUser->isAuthenticated()) {
33 $preferred_langcode = $this->currentUser->getPreferredLangcode(); 33 $preferred_langcode = $this->currentUser->getPreferredLangcode(FALSE);
34 $default_langcode = $this->languageManager->getDefaultLanguage()->getId();
35 $languages = $this->languageManager->getLanguages(); 34 $languages = $this->languageManager->getLanguages();
36 if (!empty($preferred_langcode) && $preferred_langcode != $default_langcode && isset($languages[$preferred_langcode])) { 35 if (!empty($preferred_langcode) && isset($languages[$preferred_langcode])) {
37 $langcode = $preferred_langcode; 36 $langcode = $preferred_langcode;
38 } 37 }
39 } 38 }
40 39
41 // No language preference from the user. 40 // No language preference from the user.