diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2016-08-06 14:51:50 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2016-09-06 18:32:17 +0300 |
commit | 596e0e98e4483d2a0a709412a338ceddb6538757 (patch) | |
tree | 0f8b33f98aa67dcb6fed48095b47ddd565575960 /hugolib/multilingual.go | |
parent | 7cac19b1e3d2631395b88998b523a5a6d84b9e29 (diff) |
Make it possible to add a language in server mode
See #2309
Diffstat (limited to 'hugolib/multilingual.go')
-rw-r--r-- | hugolib/multilingual.go | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/hugolib/multilingual.go b/hugolib/multilingual.go index 8bc7bea33..cc9f607f2 100644 --- a/hugolib/multilingual.go +++ b/hugolib/multilingual.go @@ -6,6 +6,7 @@ import ( "sort" "strings" + "errors" "fmt" "github.com/spf13/cast" @@ -63,6 +64,26 @@ func (ml *Multilingual) Language(lang string) *Language { return ml.langMap[lang] } +func newMultiLingualFromSites(sites ...*Site) (*Multilingual, error) { + languages := make(Languages, len(sites)) + + for i, s := range sites { + if s.Language == nil { + return nil, errors.New("Missing language for site") + } + languages[i] = s.Language + } + + defaultLang := viper.GetString("DefaultContentLanguage") + + if defaultLang == "" { + defaultLang = "en" + } + + return &Multilingual{Languages: languages, DefaultLang: NewLanguage(defaultLang)}, nil + +} + func (ml *Multilingual) enabled() bool { return len(ml.Languages) > 1 } |