Refactor template loading around the handler

This commit is contained in:
Las Zenow 2017-06-06 14:18:47 +00:00
parent d40dc21627
commit 5517da6a69
9 changed files with 40 additions and 42 deletions

View file

@ -28,6 +28,25 @@ type handler struct {
ro bool
}
func (h handler) load(tmpl string, data interface{}) {
var err error
fmt := h.r.FormValue("fmt")
switch fmt {
case "rss":
err = h.template.rss.ExecuteTemplate(h.w, tmpl+".rss", data)
case "opds":
err = h.template.opds.ExecuteTemplate(h.w, tmpl+".opds", data)
case "json":
err = loadJson(h.w, tmpl, data)
default:
err = h.template.html.ExecuteTemplate(h.w, tmpl+".html", data)
}
if err != nil {
h.template.html.ExecuteTemplate(h.w, "404.html", data)
log.Warn("An error ocurred loading the template ", tmpl, ".", fmt, ": ", err)
}
}
type StatsGatherer struct {
db database.DB
store storage.Store