Files
015/pkg/mail/mail.go

30 lines
568 B
Go

package mail
import (
"embed"
"fmt"
"strings"
)
//go:embed out/*.html
var templates embed.FS
func GetMailTemplate(name string) (string, error) {
data, err := templates.ReadFile(fmt.Sprintf("out/%s.html", name))
if err != nil {
return "", fmt.Errorf("mail template %q not found", name)
}
return string(data), nil
}
func RenderMailTemplate(name string, vars map[string]string) (string, error) {
html, err := GetMailTemplate(name)
if err != nil {
return "", err
}
for k, v := range vars {
html = strings.ReplaceAll(html, k, v)
}
return html, nil
}