package elinps import ( "html/template" "log/slog" "net/http" ) type TemplateRenderer struct { t *template.Template } func NewTemplateRenderer(t *template.Template) *TemplateRenderer { return &TemplateRenderer{t: t} } func (r *TemplateRenderer) Render(w http.ResponseWriter, name string, data any) { if err := r.t.ExecuteTemplate(w, name, data); err != nil { // Não expomos detalhes do erro para o usuário (pode conter paths/etc). // Mas registramos para depuração. slog.Error("erro ao renderizar template", "template", name, "err", err) w.WriteHeader(http.StatusInternalServerError) w.Write([]byte("erro ao renderizar")) return } } type FormPageData struct { Produto string ID string Reg Registro }