summaryrefslogtreecommitdiffstats
path: root/app/user.go
diff options
context:
space:
mode:
authorCarlos Tadeu Panato Junior <ctadeu@gmail.com>2017-03-01 15:28:38 +0100
committerCorey Hulen <corey@hulen.com>2017-03-01 09:28:38 -0500
commite5065cf7575ee05c040945a4b00b7fd90bf39b83 (patch)
tree0129c2c5c4d15d6d00c93801c11a372b17751d78 /app/user.go
parentc1d5e9a9e630cc914fa0493beb88226576510ea7 (diff)
downloadchat-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.go61
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