github.com/turgay/mattermost-server@v5.3.2-0.20181002173352-2945e8a2b0ce+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  }