Make it possible to add a language in server mode

See #2309
This commit is contained in:
Bjørn Erik Pedersen
2016-08-06 14:51:50 +02:00
parent 7cac19b1e3
commit 596e0e98e4
6 changed files with 216 additions and 70 deletions

View File

@@ -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
}