Add request data to template Execute function

This commit is contained in:
Lucas Schumacher 2024-08-12 18:55:57 -04:00
parent da5eeb3f0f
commit 8bc58eedbe
3 changed files with 6 additions and 6 deletions

View File

@ -8,7 +8,7 @@ import (
)
type Template interface {
Execute(w http.ResponseWriter, data interface{})
Execute(w http.ResponseWriter, r *http.Request, data interface{})
}
func StaticController(templatePath ...string) http.HandlerFunc {
@ -20,7 +20,7 @@ func StaticController(templatePath ...string) http.HandlerFunc {
panic(err)
}
return func(w http.ResponseWriter, r *http.Request) { tpl.Execute(w, nil) }
return func(w http.ResponseWriter, r *http.Request) { tpl.Execute(w, r, nil) }
}
func FAQ(templatePath ...string) http.HandlerFunc {
@ -47,6 +47,6 @@ func FAQ(templatePath ...string) http.HandlerFunc {
}
return func(w http.ResponseWriter, r *http.Request) {
tpl.Execute(w, questions)
tpl.Execute(w, r, questions)
}
}

View File

@ -27,7 +27,7 @@ func (u Users) GetSignup(w http.ResponseWriter, r *http.Request) {
}
data.Email = r.FormValue("email")
data.CSRFField = csrf.TemplateField(r)
u.Templates.Signup.Execute(w, data)
u.Templates.Signup.Execute(w, r, data)
}
func (u Users) PostSignup(w http.ResponseWriter, r *http.Request) {
@ -49,7 +49,7 @@ func (u Users) GetSignin(w http.ResponseWriter, r *http.Request) {
}
data.Email = r.FormValue("email")
data.CSRFField = csrf.TemplateField(r)
u.Templates.Signin.Execute(w, data)
u.Templates.Signin.Execute(w, r, data)
}
func (u Users) PostSignin(w http.ResponseWriter, r *http.Request) {
var data struct {

View File

@ -14,7 +14,7 @@ type Template struct {
htmlTpl *template.Template
}
func (t Template) Execute(w http.ResponseWriter, data interface{}) {
func (t Template) Execute(w http.ResponseWriter, r *http.Request, data interface{}) {
w.Header().Set("Content-Type", "text/html; charset=utf8")
err := t.htmlTpl.Execute(w, data)
if err != nil {