Admin should not delete himself (#19423)

Admin should not be able to delete themselves.

Also partially fix #15449
This commit is contained in:
Lunny Xiao
2022-05-09 04:22:55 +08:00
committed by GitHub
parent 290cc884f2
commit 9efa47131f
3 changed files with 16 additions and 0 deletions

View File

@ -416,6 +416,15 @@ func DeleteUser(ctx *context.Context) {
return
}
// admin should not delete themself
if u.ID == ctx.Doer.ID {
ctx.Flash.Error(ctx.Tr("admin.users.cannot_delete_self"))
ctx.JSON(http.StatusOK, map[string]interface{}{
"redirect": setting.AppSubURL + "/admin/users/" + url.PathEscape(ctx.Params(":userid")),
})
return
}
if err = user_service.DeleteUser(u); err != nil {
switch {
case models.IsErrUserOwnRepos(err):