Files
libredesk/internal/template/renderer.go
2024-07-01 03:08:45 +05:30

27 lines
526 B
Go

package template
import (
"bytes"
"text/template"
)
// RenderDefault renders the system default template with the data.
func (m *Manager) RenderDefault(data interface{}) (string, string, error) {
templ, err := m.GetDefaultTemplate()
if err != nil {
return "", "", err
}
tmpl, err := template.New("").Parse(templ.Body)
if err != nil {
return "", "", err
}
var rendered bytes.Buffer
if err := tmpl.Execute(&rendered, data); err != nil {
return "", "", err
}
return rendered.String(), templ.Subject, nil
}