summaryrefslogtreecommitdiffstats
path: root/tpl/urls/urls.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2017-11-12 10:03:56 +0100
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2017-11-17 11:01:46 +0100
commit60dfb9a6e076200ab3ca3fd30e34bb3c14e0a893 (patch)
tree810d3d7ca40a55045fec4a0718eb7728621495e4 /tpl/urls/urls.go
parent2e0465764b5dacc511b977b1c9aa07324ad0ee9c (diff)
Add support for multiple staticDirs
This commit adds support for multiple statDirs both on the global and language level. A simple `config.toml` example: ```bash staticDir = ["static1", "static2"] [languages] [languages.no] staticDir = ["staticDir_override", "static_no"] baseURL = "https://example.no" languageName = "Norsk" weight = 1 title = "På norsk" [languages.en] staticDir2 = "static_en" baseURL = "https://example.com" languageName = "English" weight = 2 title = "In English" ``` In the above, with no theme used: the English site will get its static files as a union of "static1", "static2" and "static_en". On file duplicates, the right-most version will win. the Norwegian site will get its static files as a union of "staticDir_override" and "static_no". This commit also concludes the Multihost support in #4027. Fixes #36 Closes #4027
Diffstat (limited to 'tpl/urls/urls.go')
-rw-r--r--tpl/urls/urls.go10
1 files changed, 6 insertions, 4 deletions
diff --git a/tpl/urls/urls.go b/tpl/urls/urls.go
index d89069901..a9f8f4f76 100644
--- a/tpl/urls/urls.go
+++ b/tpl/urls/urls.go
@@ -26,13 +26,15 @@ import (
// New returns a new instance of the urls-namespaced template functions.
func New(deps *deps.Deps) *Namespace {
return &Namespace{
- deps: deps,
+ deps: deps,
+ multihost: deps.Cfg.GetBool("multihost"),
}
}
// Namespace provides template functions for the "urls" namespace.
type Namespace struct {
- deps *deps.Deps
+ deps *deps.Deps
+ multihost bool
}
// AbsURL takes a given string and converts it to an absolute URL.
@@ -109,7 +111,7 @@ func (ns *Namespace) RelLangURL(a interface{}) (template.HTML, error) {
return "", err
}
- return template.HTML(ns.deps.PathSpec.RelURL(s, true)), nil
+ return template.HTML(ns.deps.PathSpec.RelURL(s, !ns.multihost)), nil
}
// AbsLangURL takes a given string and converts it to an absolute URL according
@@ -121,5 +123,5 @@ func (ns *Namespace) AbsLangURL(a interface{}) (template.HTML, error) {
return "", err
}
- return template.HTML(ns.deps.PathSpec.AbsURL(s, true)), nil
+ return template.HTML(ns.deps.PathSpec.AbsURL(s, !ns.multihost)), nil
}