diff options
author | =Corey Hulen <corey@hulen.com> | 2015-10-13 09:47:31 -0700 |
---|---|---|
committer | =Corey Hulen <corey@hulen.com> | 2015-10-13 09:47:31 -0700 |
commit | 0187e702eae59fd5435ea2b061d1087a3882eb09 (patch) | |
tree | 190d87e563ea52e74881119da886ecda2d51fd7d /api/user.go | |
parent | 6bf3383bced0636f28d561abb26e21fcb76cb108 (diff) | |
download | chat-0187e702eae59fd5435ea2b061d1087a3882eb09.tar.gz chat-0187e702eae59fd5435ea2b061d1087a3882eb09.tar.bz2 chat-0187e702eae59fd5435ea2b061d1087a3882eb09.zip |
PLT-602 combining welcome and verify email
Diffstat (limited to 'api/user.go')
-rw-r--r-- | api/user.go | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/api/user.go b/api/user.go index faf828cf9..146ede015 100644 --- a/api/user.go +++ b/api/user.go @@ -198,13 +198,12 @@ func CreateUser(c *Context, team *model.Team, user *model.User) *model.User { l4g.Error("Encountered an issue joining default channels user_id=%s, team_id=%s, err=%v", ruser.Id, ruser.TeamId, err) } - fireAndForgetWelcomeEmail(ruser.Email, team.DisplayName, c.GetSiteURL(), c.GetTeamURLFromTeam(team)) + fireAndForgetWelcomeEmail(result.Data.(*model.User).Id, ruser.Email, team.Name, team.DisplayName, c.GetSiteURL(), c.GetTeamURLFromTeam(team), user.EmailVerified) + if user.EmailVerified { if cresult := <-Srv.Store.User().VerifyEmail(ruser.Id); cresult.Err != nil { l4g.Error("Failed to set email verified err=%v", cresult.Err) } - } else { - FireAndForgetVerifyEmail(result.Data.(*model.User).Id, ruser.Email, team.Name, team.DisplayName, c.GetSiteURL(), c.GetTeamURLFromTeam(team)) } ruser.Sanitize(map[string]bool{}) @@ -218,7 +217,7 @@ func CreateUser(c *Context, team *model.Team, user *model.User) *model.User { } } -func fireAndForgetWelcomeEmail(email, teamDisplayName, siteURL, teamURL string) { +func fireAndForgetWelcomeEmail(userId, email, teamName, teamDisplayName, siteURL, teamURL string, verified bool) { go func() { subjectPage := NewServerTemplatePage("welcome_subject") @@ -227,10 +226,14 @@ func fireAndForgetWelcomeEmail(email, teamDisplayName, siteURL, teamURL string) bodyPage.Props["SiteURL"] = siteURL bodyPage.Props["TeamURL"] = teamURL + if !verified { + link := fmt.Sprintf("%s/verify_email?uid=%s&hid=%s&teamname=%s&email=%s", siteURL, userId, model.HashPassword(userId), teamName, email) + bodyPage.Props["VerifyUrl"] = link + } + if err := utils.SendMail(email, subjectPage.Render(), bodyPage.Render()); err != nil { l4g.Error("Failed to send welcome email successfully err=%v", err) } - }() } |