aboutsummaryrefslogtreecommitdiffstats
path: root/template.go
diff options
context:
space:
mode:
authorLibravatarLibravatar Simon Ser <[email protected]> 2019-12-11 15:08:31 +0100
committerLibravatarLibravatar Simon Ser <[email protected]> 2019-12-11 15:08:31 +0100
commit1b5bc568fb638314b62ea3d6635de56109680da9 (patch)
treec9288cab963085114b6e54fcf5de7c08c043f8b5 /template.go
parentfec8caa3cdea5218cbde9c95e8600ad46a8f5fc8 (diff)
downloadalps-1b5bc568fb638314b62ea3d6635de56109680da9.tar.gz
alps-1b5bc568fb638314b62ea3d6635de56109680da9.tar.bz2
alps-1b5bc568fb638314b62ea3d6635de56109680da9.zip
Allow plugins to provide their own templates
Diffstat (limited to 'template.go')
-rw-r--r--template.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/template.go b/template.go
index 7f4d658..3bdcc9d 100644
--- a/template.go
+++ b/template.go
@@ -92,15 +92,18 @@ func loadTemplates(logger echo.Logger, defaultTheme string, plugins []Plugin) (*
return url.PathEscape(s)
},
})
- for _, p := range plugins {
- base = base.Funcs(p.Filters())
- }
base, err := base.ParseGlob("public/*.html")
if err != nil {
return nil, err
}
+ for _, p := range plugins {
+ if err := p.LoadTemplate(base); err != nil {
+ return nil, fmt.Errorf("failed to load template for plugin '%v': %v", p.Name(), err)
+ }
+ }
+
themes := make(map[string]*template.Template)
files, err := ioutil.ReadDir(themesDir)