summaryrefslogtreecommitdiffstats
path: root/hugolib/config.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-01-19 08:24:10 +0100
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-01-19 08:24:10 +0100
commit4d5e4f379a890a3c6cbc11ddb40d77a90f14c015 (patch)
treee016d93823f0c9c90b879792eda359d43be23e4e /hugolib/config.go
parentcd77968284c64525c351f0b99466ad2ef29657e5 (diff)
hugolib: Add validation for defaultContentLanguage
When `languages` are defined, then `defaultContentLanguage` must match one of those. Fixes #4298
Diffstat (limited to 'hugolib/config.go')
-rw-r--r--hugolib/config.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/hugolib/config.go b/hugolib/config.go
index 8e06d3e8e..f1b6ebe55 100644
--- a/hugolib/config.go
+++ b/hugolib/config.go
@@ -131,6 +131,22 @@ func loadLanguageSettings(cfg config.Provider, oldLangs helpers.Languages) error
}
}
+ defaultLang := cfg.GetString("defaultContentLanguage")
+
+ // The defaultContentLanguage is something the user has to decide, but it needs
+ // to match a language in the language definition list.
+ langExists := false
+ for _, lang := range langs {
+ if lang.Lang == defaultLang {
+ langExists = true
+ break
+ }
+ }
+
+ if !langExists {
+ return fmt.Errorf("site config value %q for defaultContentLanguage does not match any language definition", defaultLang)
+ }
+
cfg.Set("languagesSorted", langs)
cfg.Set("multilingual", len(langs) > 1)