github.com/levb/mattermost-server@v5.3.1+incompatible/utils/timezone.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See License.txt for license information. 3 4 package utils 5 6 import ( 7 "encoding/json" 8 "io/ioutil" 9 10 "github.com/mattermost/mattermost-server/model" 11 ) 12 13 func LoadTimezones(fileName string) model.SupportedTimezones { 14 var supportedTimezones model.SupportedTimezones 15 16 if timezoneFile := FindConfigFile(fileName); timezoneFile == "" { 17 return model.DefaultSupportedTimezones 18 } else if raw, err := ioutil.ReadFile(timezoneFile); err != nil { 19 return model.DefaultSupportedTimezones 20 } else if err := json.Unmarshal(raw, &supportedTimezones); err != nil { 21 return model.DefaultSupportedTimezones 22 } else { 23 return supportedTimezones 24 } 25 }