I18n: Add locale to user preference (#49425)
* Add __debug_bin file to gitignore * Add locale user preference * undo defaulting to existing JSONData in preferences save
This commit is contained in:
@@ -47,6 +47,7 @@ type SavePreferenceCommand struct {
|
||||
Timezone string `json:"timezone,omitempty"`
|
||||
WeekStart string `json:"weekStart,omitempty"`
|
||||
Theme string `json:"theme,omitempty"`
|
||||
Locale string `json:"locale,omitempty"`
|
||||
Navbar *NavbarPreference `json:"navbar,omitempty"`
|
||||
QueryHistory *QueryHistoryPreference `json:"queryHistory,omitempty"`
|
||||
}
|
||||
@@ -61,6 +62,7 @@ type PatchPreferenceCommand struct {
|
||||
Timezone *string `json:"timezone,omitempty"`
|
||||
WeekStart *string `json:"weekStart,omitempty"`
|
||||
Theme *string `json:"theme,omitempty"`
|
||||
Locale *string `json:"locale,omitempty"`
|
||||
Navbar *NavbarPreference `json:"navbar,omitempty"`
|
||||
QueryHistory *QueryHistoryPreference `json:"queryHistory,omitempty"`
|
||||
}
|
||||
@@ -77,6 +79,7 @@ type NavbarPreference struct {
|
||||
}
|
||||
|
||||
type PreferenceJSONData struct {
|
||||
Locale string `json:"locale"`
|
||||
Navbar NavbarPreference `json:"navbar"`
|
||||
QueryHistory QueryHistoryPreference `json:"queryHistory"`
|
||||
}
|
||||
|
||||
@@ -92,6 +92,9 @@ func (s *Service) Save(ctx context.Context, cmd *pref.SavePreferenceCommand) err
|
||||
Theme: cmd.Theme,
|
||||
Created: time.Now(),
|
||||
Updated: time.Now(),
|
||||
JSONData: &pref.PreferenceJSONData{
|
||||
Locale: cmd.Locale,
|
||||
},
|
||||
}
|
||||
_, err = s.store.Insert(ctx, preference)
|
||||
if err != nil {
|
||||
@@ -106,8 +109,10 @@ func (s *Service) Save(ctx context.Context, cmd *pref.SavePreferenceCommand) err
|
||||
preference.Theme = cmd.Theme
|
||||
preference.Updated = time.Now()
|
||||
preference.Version += 1
|
||||
preference.JSONData = &pref.PreferenceJSONData{}
|
||||
preference.HomeDashboardID = cmd.HomeDashboardID
|
||||
preference.JSONData = &pref.PreferenceJSONData{
|
||||
Locale: cmd.Locale,
|
||||
}
|
||||
|
||||
if cmd.Navbar != nil {
|
||||
preference.JSONData.Navbar = *cmd.Navbar
|
||||
@@ -141,6 +146,13 @@ func (s *Service) Patch(ctx context.Context, cmd *pref.PatchPreferenceCommand) e
|
||||
exists = true
|
||||
}
|
||||
|
||||
if cmd.Locale != nil {
|
||||
if preference.JSONData == nil {
|
||||
preference.JSONData = &pref.PreferenceJSONData{}
|
||||
}
|
||||
preference.JSONData.Locale = *cmd.Locale
|
||||
}
|
||||
|
||||
if cmd.Navbar != nil {
|
||||
if preference.JSONData == nil {
|
||||
preference.JSONData = &pref.PreferenceJSONData{}
|
||||
|
||||
Reference in New Issue
Block a user