Internationalization: Change locale preference to language (#58359)

* backend locale -> language

* frontend locale -> language

* sample.ini and tests

* fix few last locale -> language

* fix few last locale -> language
This commit is contained in:
Josh Hunt
2022-11-22 12:18:34 +00:00
committed by GitHub
parent 9926931d40
commit 460be70261
20 changed files with 85 additions and 77 deletions
+7 -7
View File
@@ -61,8 +61,8 @@ func (s *Service) GetWithDefaults(ctx context.Context, query *pref.GetPreference
res.HomeDashboardID = p.HomeDashboardID
}
if p.JSONData != nil {
if p.JSONData.Locale != "" {
res.JSONData.Locale = p.JSONData.Locale
if p.JSONData.Language != "" {
res.JSONData.Language = p.JSONData.Language
}
if len(p.JSONData.Navbar.SavedItems) > 0 {
@@ -113,7 +113,7 @@ func (s *Service) Save(ctx context.Context, cmd *pref.SavePreferenceCommand) err
Created: time.Now(),
Updated: time.Now(),
JSONData: &pref.PreferenceJSONData{
Locale: cmd.Locale,
Language: cmd.Language,
},
}
_, err = s.store.Insert(ctx, preference)
@@ -131,7 +131,7 @@ func (s *Service) Save(ctx context.Context, cmd *pref.SavePreferenceCommand) err
preference.Version += 1
preference.HomeDashboardID = cmd.HomeDashboardID
preference.JSONData = &pref.PreferenceJSONData{
Locale: cmd.Locale,
Language: cmd.Language,
}
if cmd.Navbar != nil {
@@ -166,11 +166,11 @@ func (s *Service) Patch(ctx context.Context, cmd *pref.PatchPreferenceCommand) e
exists = true
}
if cmd.Locale != nil {
if cmd.Language != nil {
if preference.JSONData == nil {
preference.JSONData = &pref.PreferenceJSONData{}
}
preference.JSONData.Locale = *cmd.Locale
preference.JSONData.Language = *cmd.Language
}
if cmd.Navbar != nil {
@@ -238,7 +238,7 @@ func (s *Service) GetDefaults() *pref.Preference {
}
if s.features.IsEnabled(featuremgmt.FlagInternationalization) {
defaults.JSONData.Locale = s.cfg.DefaultLocale
defaults.JSONData.Language = s.cfg.DefaultLanguage
}
return defaults
+14 -14
View File
@@ -33,7 +33,7 @@ func TestGetDefaults(t *testing.T) {
cfg: setting.NewCfg(),
features: featuremgmt.WithFeatures(),
}
prefService.cfg.DefaultLocale = "en-US"
prefService.cfg.DefaultLanguage = "en-US"
prefService.cfg.DefaultTheme = "light"
prefService.cfg.DateFormats.DefaultTimezone = "UTC"
weekStart := ""
@@ -76,7 +76,7 @@ func TestGetDefaultsWithI18nFeatureFlag(t *testing.T) {
features: featuremgmt.WithFeatures(featuremgmt.FlagInternationalization),
}
weekStart := ""
prefService.cfg.DefaultLocale = "en-US"
prefService.cfg.DefaultLanguage = "en-US"
prefService.cfg.DefaultTheme = "light"
prefService.cfg.DateFormats.DefaultTimezone = "UTC"
@@ -88,7 +88,7 @@ func TestGetDefaultsWithI18nFeatureFlag(t *testing.T) {
Timezone: "UTC",
HomeDashboardID: 0,
JSONData: &pref.PreferenceJSONData{
Locale: "en-US",
Language: "en-US",
},
}
if diff := cmp.Diff(expected, preference); diff != "" {
@@ -103,7 +103,7 @@ func TestGetWithDefaults_withUserAndOrgPrefs(t *testing.T) {
cfg: setting.NewCfg(),
features: featuremgmt.WithFeatures(),
}
prefService.cfg.DefaultLocale = "en-US"
prefService.cfg.DefaultLanguage = "en-US"
weekStartOne := "1"
weekStartTwo := "2"
@@ -115,7 +115,7 @@ func TestGetWithDefaults_withUserAndOrgPrefs(t *testing.T) {
Timezone: "UTC",
WeekStart: &weekStartOne,
JSONData: &pref.PreferenceJSONData{
Locale: "en-GB",
Language: "en-GB",
},
},
pref.Preference{
@@ -126,7 +126,7 @@ func TestGetWithDefaults_withUserAndOrgPrefs(t *testing.T) {
Timezone: "browser",
WeekStart: &weekStartTwo,
JSONData: &pref.PreferenceJSONData{
Locale: "en-AU",
Language: "en-AU",
},
},
)
@@ -141,7 +141,7 @@ func TestGetWithDefaults_withUserAndOrgPrefs(t *testing.T) {
WeekStart: &weekStartTwo,
HomeDashboardID: 4,
JSONData: &pref.PreferenceJSONData{
Locale: "en-AU",
Language: "en-AU",
},
}
if diff := cmp.Diff(expected, preference); diff != "" {
@@ -160,7 +160,7 @@ func TestGetWithDefaults_withUserAndOrgPrefs(t *testing.T) {
WeekStart: &weekStartOne,
HomeDashboardID: 1,
JSONData: &pref.PreferenceJSONData{
Locale: "en-GB",
Language: "en-GB",
},
}
if diff := cmp.Diff(expected, preference); diff != "" {
@@ -209,9 +209,9 @@ func TestGetDefaults_JSONData(t *testing.T) {
orgPreferencesJsonData := pref.PreferenceJSONData{
Navbar: orgNavbarPreferences,
}
orgPreferencesWithLocaleJsonData := pref.PreferenceJSONData{
Navbar: orgNavbarPreferences,
Locale: "en-GB",
orgPreferencesWithLanguageJsonData := pref.PreferenceJSONData{
Navbar: orgNavbarPreferences,
Language: "en-GB",
}
team2PreferencesJsonData := pref.PreferenceJSONData{
Navbar: team2NavbarPreferences,
@@ -248,7 +248,7 @@ func TestGetDefaults_JSONData(t *testing.T) {
}, preference)
})
t.Run("user JSONData with missing locale does not override org preference", func(t *testing.T) {
t.Run("user JSONData with missing language does not override org preference", func(t *testing.T) {
prefService := &Service{
store: newFake(),
cfg: setting.NewCfg(),
@@ -258,7 +258,7 @@ func TestGetDefaults_JSONData(t *testing.T) {
insertPrefs(t, prefService.store,
pref.Preference{
OrgID: 1,
JSONData: &orgPreferencesWithLocaleJsonData,
JSONData: &orgPreferencesWithLanguageJsonData,
},
pref.Preference{
OrgID: 1,
@@ -273,7 +273,7 @@ func TestGetDefaults_JSONData(t *testing.T) {
require.Equal(t, &pref.Preference{
WeekStart: &weekStart,
JSONData: &pref.PreferenceJSONData{
Locale: "en-GB",
Language: "en-GB",
Navbar: userNavbarPreferences,
QueryHistory: queryPreference,
},