From 0d1298351f3e5b653632385ee8dc48bda078e4fd Mon Sep 17 00:00:00 2001 From: kekskurse Date: Mon, 17 Feb 2025 15:02:08 +0100 Subject: [PATCH] render test --- web/render/render.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 web/render/render.go diff --git a/web/render/render.go b/web/render/render.go new file mode 100644 index 0000000..39e5d40 --- /dev/null +++ b/web/render/render.go @@ -0,0 +1,28 @@ +package render + +import ( + "context" + "embed" + "html/template" + "io" +) + +type Render struct { + fs embed.FS + t template.Template +} + +func NewRender(efs embed.FS, t template.Template) Render { + tr := Render{ + fs: efs, + t: t, + } + + return tr +} + +func (r Render) Render(ctx context.Context, w io.Writer, name string, data interface{}) error { + tmpl := template.Must(r.t.Clone()) + tmpl = template.Must(tmpl.ParseFS(r.fs, "templates/"+name+".html")) + return tmpl.ExecuteTemplate(w, name, data) +}