feat(API): user invitations and emails

This commit is contained in:
fsylvain committed 2026-09-29 07:15:17 +02:00
1 parent 7aae704d0a
commit acdef18b37
17 files changed
+1687 -7

No files matched your search

@@ -24,14 +24,25 @@ func NewMailRepository(smtp config.SmtpSettings) *MailRepository {
const defaultSubject = "RenewCMS | Action required"
func (m MailRepository) Render(templateName string, data any) (string, string, error) {
subject := defaultSubject
type subjectProvider interface {
Subject() string
}
func subjectFor(templateName string, data any) string {
if provider, ok := data.(subjectProvider); ok {
return provider.Subject()
}
switch templateName {
case "verification":
subject = "Verify your RenewCMS account"
return "Verify your RenewCMS account"
case "password-reset":
subject = "Reset your RenewCMS password"
return "Reset your RenewCMS password"
}
return defaultSubject
}
func (m MailRepository) Render(templateName string, data any) (string, string, error) {
subject := subjectFor(templateName, data)
tmpl, err := template.ParseFS(mailTemplateFiles, "templates/"+templateName+".html")
if err != nil {