diff options
author | Carlos Tadeu Panato Junior <ctadeu@gmail.com> | 2017-03-01 15:28:38 +0100 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2017-03-01 09:28:38 -0500 |
commit | e5065cf7575ee05c040945a4b00b7fd90bf39b83 (patch) | |
tree | 0129c2c5c4d15d6d00c93801c11a372b17751d78 /app/user.go | |
parent | c1d5e9a9e630cc914fa0493beb88226576510ea7 (diff) | |
download | chat-e5065cf7575ee05c040945a4b00b7fd90bf39b83.tar.gz chat-e5065cf7575ee05c040945a4b00b7fd90bf39b83.tar.bz2 chat-e5065cf7575ee05c040945a4b00b7fd90bf39b83.zip |
Make all emails with the same pattern on subject (#5198)
* make all email subject standard
* move SendPasswordReset to app/email.go
update per review
* update email subjects per review
update error
fix expected subject
* Update email_test.go
* Update en.json
* fix missing quotes
Diffstat (limited to 'app/user.go')
-rw-r--r-- | app/user.go | 61 |
1 files changed, 23 insertions, 38 deletions
diff --git a/app/user.go b/app/user.go index 53e389947..d1ddceb23 100644 --- a/app/user.go +++ b/app/user.go @@ -7,7 +7,6 @@ import ( "bytes" "fmt" "hash/fnv" - "html/template" "image" "image/color" "image/draw" @@ -18,7 +17,6 @@ import ( "io/ioutil" "mime/multipart" "net/http" - "net/url" "strconv" "strings" @@ -989,42 +987,6 @@ func UpdatePasswordSendEmail(user *model.User, newPassword, method, siteURL stri return nil } -func SendPasswordReset(email string, siteURL string) (bool, *model.AppError) { - var user *model.User - var err *model.AppError - if user, err = GetUserByEmail(email); err != nil { - return false, nil - } - - if user.AuthData != nil && len(*user.AuthData) != 0 { - return false, model.NewAppError("SendPasswordReset", "api.user.send_password_reset.sso.app_error", nil, "userId="+user.Id, http.StatusBadRequest) - } - - var recovery *model.PasswordRecovery - if recovery, err = CreatePasswordRecovery(user.Id); err != nil { - return false, err - } - - T := utils.GetUserTranslations(user.Locale) - - link := fmt.Sprintf("%s/reset_password_complete?code=%s", siteURL, url.QueryEscape(recovery.Code)) - - subject := T("api.templates.reset_subject") - - bodyPage := utils.NewHTMLTemplate("reset_body", user.Locale) - bodyPage.Props["SiteURL"] = siteURL - bodyPage.Props["Title"] = T("api.templates.reset_body.title") - bodyPage.Html["Info"] = template.HTML(T("api.templates.reset_body.info")) - bodyPage.Props["ResetUrl"] = link - bodyPage.Props["Button"] = T("api.templates.reset_body.button") - - if err := utils.SendMail(email, subject, bodyPage.Render()); err != nil { - return false, model.NewLocAppError("SendPasswordReset", "api.user.send_password_reset.send.app_error", nil, "err="+err.Message) - } - - return true, nil -} - func ResetPasswordFromCode(code, newPassword, siteURL string) *model.AppError { var recovery *model.PasswordRecovery var err *model.AppError @@ -1058,6 +1020,29 @@ func ResetPasswordFromCode(code, newPassword, siteURL string) *model.AppError { return nil } +func SendPasswordReset(email string, siteURL string) (bool, *model.AppError) { + var user *model.User + var err *model.AppError + if user, err = GetUserByEmail(email); err != nil { + return false, nil + } + + if user.AuthData != nil && len(*user.AuthData) != 0 { + return false, model.NewAppError("SendPasswordReset", "api.user.send_password_reset.sso.app_error", nil, "userId="+user.Id, http.StatusBadRequest) + } + + var recovery *model.PasswordRecovery + if recovery, err = CreatePasswordRecovery(user.Id); err != nil { + return false, err + } + + if _, err := SendPasswordResetEmail(email, recovery, user.Locale, siteURL); err != nil { + return false, model.NewLocAppError("SendPasswordReset", "api.user.send_password_reset.send.app_error", nil, "err="+err.Message) + } + + return true, nil +} + func CreatePasswordRecovery(userId string) (*model.PasswordRecovery, *model.AppError) { recovery := &model.PasswordRecovery{} recovery.UserId = userId |