]> source.dussan.org Git - gitea.git/commitdiff
Show a link to password reset from password change and delete account (#862)
authorSandro Santilli <strk@kbt.io>
Sat, 11 Mar 2017 09:11:54 +0000 (10:11 +0100)
committerLunny Xiao <xiaolunwen@gmail.com>
Sat, 11 Mar 2017 09:11:54 +0000 (17:11 +0800)
It's helpful when you forgot your password thus cannot change it
(can happen if you log in via OAuth2 or OpenID)

Also make sure that both the delete-account and password-change
links to forgot-password will have the primary email pre-filled

routers/user/auth.go
routers/user/setting.go
templates/user/settings/delete.tmpl
templates/user/settings/password.tmpl

index ed8aac0de97eb1db54338b5c8cdd01b1cfedd1db..cb7d5961bd4ec30dc0e51be4f93e6bf7cac8df6d 100644 (file)
@@ -872,6 +872,9 @@ func ForgotPasswd(ctx *context.Context) {
                return
        }
 
+       email := ctx.Query("email")
+       ctx.Data["Email"] = email
+
        ctx.Data["IsResetRequest"] = true
        ctx.HTML(200, tplForgotPassword)
 }
index 66ee680fb55e51dfb4ab38733e3b6f627cc00b0f..622f45f2c6881f1db9d5356a5d7199cbdd5130c9 100644 (file)
@@ -193,6 +193,7 @@ func SettingsDeleteAvatar(ctx *context.Context) {
 func SettingsPassword(ctx *context.Context) {
        ctx.Data["Title"] = ctx.Tr("settings")
        ctx.Data["PageIsSettingsPassword"] = true
+       ctx.Data["Email"] = ctx.User.Email
        ctx.HTML(200, tplSettingsPassword)
 }
 
@@ -200,6 +201,7 @@ func SettingsPassword(ctx *context.Context) {
 func SettingsPasswordPost(ctx *context.Context, form auth.ChangePasswordForm) {
        ctx.Data["Title"] = ctx.Tr("settings")
        ctx.Data["PageIsSettingsPassword"] = true
+       ctx.Data["PageIsSettingsDelete"] = true
 
        if ctx.HasError() {
                ctx.HTML(200, tplSettingsPassword)
@@ -684,6 +686,7 @@ func SettingsDeleteAccountLink(ctx *context.Context) {
 func SettingsDelete(ctx *context.Context) {
        ctx.Data["Title"] = ctx.Tr("settings")
        ctx.Data["PageIsSettingsDelete"] = true
+       ctx.Data["Email"] = ctx.User.Email
 
        if ctx.Req.Method == "POST" {
                if _, err := models.UserSignIn(ctx.User.Name, ctx.Query("password")); err != nil {
index b95eb2105f1300dc565bebe608da80b422100325..67f5782d6ec75981f8300e22321febb57910790b 100644 (file)
@@ -22,6 +22,9 @@
                                                <div class="ui red button delete-button" data-type="form" data-form="#delete-form">
                                                        {{.i18n.Tr "settings.confirm_delete_account"}}
                                                </div>
+                                               <div>
+                                                       <a href="{{AppSubUrl}}/user/forget_password?email={{.Email}}">{{.i18n.Tr "auth.forget_password"}}</a>
+                                               </div>
                                        </form>
                                </div>
                        </div>
index b59d1ff56fde0f355a91a2db7307fc137de4732f..f4883d7bf06ef10c646bb4d3d0771b6d94743b64 100644 (file)
@@ -29,6 +29,7 @@
 
                                                <div class="field">
                                                        <button class="ui green button">{{$.i18n.Tr "settings.change_password"}}</button>
+                                                       <a href="{{AppSubUrl}}/user/forget_password?email={{.Email}}">{{.i18n.Tr "auth.forget_password"}}</a>
                                                </div>
                                        </form>
                                        {{else}}