From 4c9cc23d04fa296024f04ce887cab2a616dff602 Mon Sep 17 00:00:00 2001 From: brandonkelly Date: Wed, 4 Jul 2018 20:43:02 +0200 Subject: [PATCH] Fixed #3063 --- CHANGELOG-v3.md | 5 +++++ src/i18n/I18N.php | 7 +++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG-v3.md b/CHANGELOG-v3.md index 3b610ddda04..7e2d79522bf 100644 --- a/CHANGELOG-v3.md +++ b/CHANGELOG-v3.md @@ -1,5 +1,10 @@ # Release Notes for Craft CMS 3.x +## Unreleased + +### Fixed +- Fixed a bug where `craft\i18n\I18N::getPrimarySiteLocale()` and `getPrimarySiteLocaleId()` were returning locale info for the _first_ site, rather than the primary one. ([#3063](https://github.com/craftcms/cms/issues/3063)) + ## 3.0.14 - 2018-07-03 ### Changed diff --git a/src/i18n/I18N.php b/src/i18n/I18N.php index 61332c1d8ab..056d744847a 100644 --- a/src/i18n/I18N.php +++ b/src/i18n/I18N.php @@ -226,9 +226,8 @@ public function getSiteLocales(): array */ public function getPrimarySiteLocale(): Locale { - $locales = $this->getSiteLocales(); - - return $locales[0]; + $site = Craft::$app->getSites()->getPrimarySite(); + return new Locale($site->language); } /** @@ -239,7 +238,7 @@ public function getPrimarySiteLocale(): Locale */ public function getPrimarySiteLocaleId(): string { - return $this->getPrimarySiteLocale()->id; + return Craft::$app->getSites()->getPrimarySite()->language; } /**