I18n: Add default locale server config option (#51035)
* I18n: Set default locale in server config and expose in grafanaBootData * put default locale behind feature flag * update tests now that default locale is behind feature flag * little bit of PR feedback * update sample.ini
This commit is contained in:
@@ -5,22 +5,25 @@ import (
|
||||
"errors"
|
||||
"time"
|
||||
|
||||
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
||||
pref "github.com/grafana/grafana/pkg/services/preference"
|
||||
"github.com/grafana/grafana/pkg/services/sqlstore/db"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
|
||||
type Service struct {
|
||||
store store
|
||||
cfg *setting.Cfg
|
||||
store store
|
||||
cfg *setting.Cfg
|
||||
features *featuremgmt.FeatureManager
|
||||
}
|
||||
|
||||
func ProvideService(db db.DB, cfg *setting.Cfg) pref.Service {
|
||||
func ProvideService(db db.DB, cfg *setting.Cfg, features *featuremgmt.FeatureManager) pref.Service {
|
||||
return &Service{
|
||||
store: &sqlStore{
|
||||
db: db,
|
||||
},
|
||||
cfg: cfg,
|
||||
cfg: cfg,
|
||||
features: features,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +54,17 @@ func (s *Service) GetWithDefaults(ctx context.Context, query *pref.GetPreference
|
||||
res.HomeDashboardID = p.HomeDashboardID
|
||||
}
|
||||
if p.JSONData != nil {
|
||||
res.JSONData = p.JSONData
|
||||
if p.JSONData.Locale != "" {
|
||||
res.JSONData.Locale = p.JSONData.Locale
|
||||
}
|
||||
|
||||
if len(p.JSONData.Navbar.SavedItems) > 0 {
|
||||
res.JSONData.Navbar = p.JSONData.Navbar
|
||||
}
|
||||
|
||||
if p.JSONData.QueryHistory.HomeTab != "" {
|
||||
res.JSONData.QueryHistory.HomeTab = p.JSONData.QueryHistory.HomeTab
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -217,5 +230,9 @@ func (s *Service) GetDefaults() *pref.Preference {
|
||||
JSONData: &pref.PreferenceJSONData{},
|
||||
}
|
||||
|
||||
if s.features.IsEnabled(featuremgmt.FlagInternationalization) {
|
||||
defaults.JSONData.Locale = s.cfg.DefaultLocale
|
||||
}
|
||||
|
||||
return defaults
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user