summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorenahum <nahumhbl@gmail.com>2016-06-01 09:56:13 -0300
committerChristopher Speller <crspeller@gmail.com>2016-06-01 08:56:13 -0400
commitb00a60ab71b2bd4640c8608d71805ba9caae97d9 (patch)
tree02137b19bc56e5041530e710955f039682da43c7 /model
parent7be2a05cf58c22d1edfab12a2b55569c5e48ab2f (diff)
downloadchat-b00a60ab71b2bd4640c8608d71805ba9caae97d9.tar.gz
chat-b00a60ab71b2bd4640c8608d71805ba9caae97d9.tar.bz2
chat-b00a60ab71b2bd4640c8608d71805ba9caae97d9.zip
PLT-1800 Load server side locale from the config.json (#3135)
* 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 * Remove github.com/cloudfoundry/jibber_jabber as vendor dependency
Diffstat (limited to 'model')
-rw-r--r--model/config.go48
-rw-r--r--model/user.go2
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 b7717c4ff..ab076894a 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 == "" {