diff options
author | enahum <nahumhbl@gmail.com> | 2016-05-27 09:25:37 -0300 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2016-05-27 08:25:37 -0400 |
commit | a2c183f401bdf8e9abddd35d4561d42034325046 (patch) | |
tree | 66565a9e21ad6b47b4dca18113ad9be48bd98492 /model | |
parent | 15e427e806716b372f7fbef12d922f847ccc71b5 (diff) | |
download | chat-a2c183f401bdf8e9abddd35d4561d42034325046.tar.gz chat-a2c183f401bdf8e9abddd35d4561d42034325046.tar.bz2 chat-a2c183f401bdf8e9abddd35d4561d42034325046.zip |
PLT-1800 Load server side locale from the config.json (#3092)
* PLT-1800 Load server side locale from the config.json
* Add support for locales with country specifics
* Fix localization on served locale file as plain/text
Diffstat (limited to 'model')
-rw-r--r-- | model/config.go | 48 | ||||
-rw-r--r-- | model/user.go | 2 |
2 files changed, 35 insertions, 15 deletions
diff --git a/model/config.go b/model/config.go index 674a352f0..08b00b90f 100644 --- a/model/config.go +++ b/model/config.go @@ -204,20 +204,27 @@ type ComplianceSettings struct { EnableDaily *bool } +type LocalizationSettings struct { + DefaultServerLocale *string + DefaultClientLocale *string + AvailableLocales *string +} + type Config struct { - ServiceSettings ServiceSettings - TeamSettings TeamSettings - SqlSettings SqlSettings - LogSettings LogSettings - FileSettings FileSettings - EmailSettings EmailSettings - RateLimitSettings RateLimitSettings - PrivacySettings PrivacySettings - SupportSettings SupportSettings - GitLabSettings SSOSettings - GoogleSettings SSOSettings - LdapSettings LdapSettings - ComplianceSettings ComplianceSettings + ServiceSettings ServiceSettings + TeamSettings TeamSettings + SqlSettings SqlSettings + LogSettings LogSettings + FileSettings FileSettings + EmailSettings EmailSettings + RateLimitSettings RateLimitSettings + PrivacySettings PrivacySettings + SupportSettings SupportSettings + GitLabSettings SSOSettings + GoogleSettings SSOSettings + LdapSettings LdapSettings + ComplianceSettings ComplianceSettings + LocalizationSettings LocalizationSettings } func (o *Config) ToJson() string { @@ -513,6 +520,21 @@ func (o *Config) SetDefaults() { o.LdapSettings.NicknameAttribute = new(string) *o.LdapSettings.NicknameAttribute = "" } + + if o.LocalizationSettings.DefaultServerLocale == nil { + o.LocalizationSettings.DefaultServerLocale = new(string) + *o.LocalizationSettings.DefaultServerLocale = DEFAULT_LOCALE + } + + if o.LocalizationSettings.DefaultClientLocale == nil { + o.LocalizationSettings.DefaultClientLocale = new(string) + *o.LocalizationSettings.DefaultClientLocale = DEFAULT_LOCALE + } + + if o.LocalizationSettings.AvailableLocales == nil { + o.LocalizationSettings.AvailableLocales = new(string) + *o.LocalizationSettings.AvailableLocales = *o.LocalizationSettings.DefaultClientLocale + } } func (o *Config) IsValid() *AppError { diff --git a/model/user.go b/model/user.go index 7dee67381..9b52cfa97 100644 --- a/model/user.go +++ b/model/user.go @@ -136,7 +136,6 @@ func (u *User) PreSave() { u.Username = strings.ToLower(u.Username) u.Email = strings.ToLower(u.Email) - u.Locale = strings.ToLower(u.Locale) u.CreateAt = GetMillis() u.UpdateAt = u.CreateAt @@ -166,7 +165,6 @@ func (u *User) PreSave() { func (u *User) PreUpdate() { u.Username = strings.ToLower(u.Username) u.Email = strings.ToLower(u.Email) - u.Locale = strings.ToLower(u.Locale) u.UpdateAt = GetMillis() if u.AuthData != nil && *u.AuthData == "" { |