Skip to content

Commit 06d9d9e

Browse files
authored
Fix incorrect/Improve error handle in edit user page (#23805)
Changes: - `RenderWithErr` should render `tplUserEdit` not `tplUserNew` in edit page - If error occurred in `HandleUsernameChange` redirect to original edit page instead of user list page
1 parent ffd2269 commit 06d9d9e

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

routers/web/admin/users.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -316,13 +316,13 @@ func EditUserPost(ctx *context.Context) {
316316
log.Error(err.Error())
317317
errMsg = ctx.Tr("auth.password_pwned_err")
318318
}
319-
ctx.RenderWithErr(errMsg, tplUserNew, &form)
319+
ctx.RenderWithErr(errMsg, tplUserEdit, &form)
320320
return
321321
}
322322

323323
if err := user_model.ValidateEmail(form.Email); err != nil {
324324
ctx.Data["Err_Email"] = true
325-
ctx.RenderWithErr(ctx.Tr("form.email_error"), tplUserNew, &form)
325+
ctx.RenderWithErr(ctx.Tr("form.email_error"), tplUserEdit, &form)
326326
return
327327
}
328328

@@ -338,7 +338,10 @@ func EditUserPost(ctx *context.Context) {
338338

339339
if len(form.UserName) != 0 && u.Name != form.UserName {
340340
if err := user_setting.HandleUsernameChange(ctx, u, form.UserName); err != nil {
341-
ctx.Redirect(setting.AppSubURL + "/admin/users")
341+
if ctx.Written() {
342+
return
343+
}
344+
ctx.RenderWithErr(ctx.Flash.ErrorMsg, tplUserEdit, &form)
342345
return
343346
}
344347
u.Name = form.UserName

0 commit comments

Comments
 (0)