diff --git a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUrlFallback.php b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUrlFallback.php index ee43456..9576e4a 100644 --- a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUrlFallback.php +++ b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUrlFallback.php @@ -10,7 +10,6 @@ use Drupal\Component\Annotation\Plugin; use Drupal\Core\Annotation\Translation; use Drupal\Core\Language\Language; -use Drupal\Core\Language\LanguageManager; use Drupal\Core\Language\LanguageNegotiationMethodBase; use Symfony\Component\HttpFoundation\Request; diff --git a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUser.php b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUser.php index ba9741d..8e5bdfe 100644 --- a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUser.php +++ b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUser.php @@ -36,8 +36,8 @@ public function negotiateLanguage(array $languages, Request $request = NULL) { // User preference (only for authenticated users). global $user; - if ($user->uid && !empty($user->preferred_langcode) && isset($languages[$user->preferred_langcode])) { - return $user->preferred_langcode; + if ($user->isAuthenticated() && isset($languages[$user->getPreferredLangcode()])) { + return $user->getPreferredLangcode(); } // No language preference from the user. diff --git a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUserAdmin.php b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUserAdmin.php index 0f2d7a0..d1e3219 100644 --- a/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUserAdmin.php +++ b/core/lib/Drupal/Core/Language/Plugin/LanguageNegotiation/LanguageNegotiationUserAdmin.php @@ -40,8 +40,8 @@ public function negotiateLanguage(array $languages, Request $request = NULL) { // @todo Avoid calling _current_path() and path_is_admin() directly. $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; + if ($user->isAuthenticated() && isset($languages[$user->getPreferredAdminLangcode()]) && path_is_admin($request_path)) { + return $user->getPreferredAdminLangcode(); } // No language preference from the user or not on an admin path. diff --git a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorTest.php b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorTest.php index f49184f..7399ed0 100644 --- a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorTest.php +++ b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorTest.php @@ -46,7 +46,9 @@ public function setUp() { $this->languages = $languages; // Create a language manager stub. - $language_manager = $this->getMock('Drupal\Core\Language\LanguageManager'); + $language_manager = $this->getMockBuilder('Drupal\Core\Language\LanguageManager') + ->disableOriginalConstructor() + ->getMock(); $language_manager->expects($this->any()) ->method('getLanguage') ->will($this->returnValue($languages['en'])); diff --git a/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php b/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php index bd6ba26..f13ef95 100644 --- a/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php +++ b/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php @@ -113,7 +113,9 @@ public function testDefaultPluginManagerWithEmptyCache() { ->with($cid . ':en', $this->expectedDefinitions); $language = new Language(array('id' => 'en')); - $language_manager = $this->getMock('Drupal\Core\Language\LanguageManager'); + $language_manager = $this->getMockBuilder('Drupal\Core\Language\LanguageManager') + ->disableOriginalConstructor() + ->getMock(); $language_manager->expects($this->once()) ->method('getLanguage') ->with(Language::TYPE_INTERFACE) @@ -144,7 +146,9 @@ public function testDefaultPluginManagerWithFilledCache() { ->method('set'); $language = new Language(array('id' => 'en')); - $language_manager = $this->getMock('Drupal\Core\Language\LanguageManager'); + $language_manager = $this->getMockBuilder('Drupal\Core\Language\LanguageManager') + ->disableOriginalConstructor() + ->getMock(); $language_manager->expects($this->once()) ->method('getLanguage') ->with(Language::TYPE_INTERFACE)