diff options
author | Carlos Tadeu Panato Junior <ctadeu@gmail.com> | 2018-05-28 16:20:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-28 16:20:08 +0200 |
commit | c3e9c414408a8c9c2806af12e659e395c605496f (patch) | |
tree | 26510a3576d891c01e1bd4a7595f24f50332ee21 /app/email.go | |
parent | b6d5cc4f696b7438317948710efb860e11c0a1a9 (diff) | |
download | chat-c3e9c414408a8c9c2806af12e659e395c605496f.tar.gz chat-c3e9c414408a8c9c2806af12e659e395c605496f.tar.bz2 chat-c3e9c414408a8c9c2806af12e659e395c605496f.zip |
[MM-1915] Add Deactivate Account - server side (#8699)
Diffstat (limited to 'app/email.go')
-rw-r--r-- | app/email.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/app/email.go b/app/email.go index aa05cefdb..206c48aaa 100644 --- a/app/email.go +++ b/app/email.go @@ -322,6 +322,28 @@ func (a *App) NewEmailTemplate(name, locale string) *utils.HTMLTemplate { return t } +func (a *App) SendDeactivateAccountEmail(email string, locale, siteURL string) *model.AppError { + T := utils.GetUserTranslations(locale) + + rawUrl, _ := url.Parse(siteURL) + + subject := T("api.templates.deactivate_subject", + map[string]interface{}{"SiteName": a.ClientConfig()["SiteName"], + "ServerURL": rawUrl.Host}) + + bodyPage := a.NewEmailTemplate("deactivate_body", locale) + bodyPage.Props["SiteURL"] = siteURL + bodyPage.Props["Title"] = T("api.templates.deactivate_body.title", map[string]interface{}{"ServerURL": rawUrl.Host}) + bodyPage.Html["Info"] = utils.TranslateAsHtml(T, "api.templates.deactivate_body.info", + map[string]interface{}{"SiteURL": siteURL}) + + if err := a.SendMail(email, subject, bodyPage.Render()); err != nil { + return model.NewAppError("SendDeactivateEmail", "api.user.send_deactivate_email_and_forget.failed.error", nil, err.Error(), http.StatusInternalServerError) + } + + return nil +} + func (a *App) SendMail(to, subject, htmlBody string) *model.AppError { license := a.License() return utils.SendMailUsingConfig(to, subject, htmlBody, a.Config(), license != nil && *license.Features.Compliance) |