mirror of
https://github.com/grafana/grafana.git
synced 2026-08-14 07:04:57 -05:00
User: Clean up update functions (#86341)
* User: remove unused function * User: Remove UpdatePermissions and support IsGrafanaAdmin flag in Update function instead * User: Remove Disable function and use Update instead
This commit is contained in:
@@ -185,15 +185,17 @@ func (hs *HTTPServer) AdminUpdateUserPermissions(c *contextmodel.ReqContext) res
|
||||
return response.Error(http.StatusBadRequest, "id is invalid", err)
|
||||
}
|
||||
|
||||
getAuthQuery := login.GetAuthInfoQuery{UserId: userID}
|
||||
if authInfo, err := hs.authInfoService.GetAuthInfo(c.Req.Context(), &getAuthQuery); err == nil && authInfo != nil {
|
||||
if authInfo, err := hs.authInfoService.GetAuthInfo(c.Req.Context(), &login.GetAuthInfoQuery{UserId: userID}); err == nil && authInfo != nil {
|
||||
oauthInfo := hs.SocialService.GetOAuthInfoProvider(authInfo.AuthModule)
|
||||
if login.IsGrafanaAdminExternallySynced(hs.Cfg, oauthInfo, authInfo.AuthModule) {
|
||||
return response.Error(http.StatusForbidden, "Cannot change Grafana Admin role for externally synced user", nil)
|
||||
}
|
||||
}
|
||||
|
||||
err = hs.userService.UpdatePermissions(c.Req.Context(), userID, form.IsGrafanaAdmin)
|
||||
err = hs.userService.Update(c.Req.Context(), &user.UpdateUserCommand{
|
||||
UserID: userID,
|
||||
IsGrafanaAdmin: &form.IsGrafanaAdmin,
|
||||
})
|
||||
if err != nil {
|
||||
if errors.Is(err, user.ErrLastGrafanaAdmin) {
|
||||
return response.Error(http.StatusBadRequest, user.ErrLastGrafanaAdmin.Error(), nil)
|
||||
@@ -318,8 +320,8 @@ func (hs *HTTPServer) AdminDisableUser(c *contextmodel.ReqContext) response.Resp
|
||||
return response.Error(http.StatusInternalServerError, "Could not disable external user", nil)
|
||||
}
|
||||
|
||||
disableCmd := user.DisableUserCommand{UserID: userID, IsDisabled: true}
|
||||
if err := hs.userService.Disable(c.Req.Context(), &disableCmd); err != nil {
|
||||
isDisabled := true
|
||||
if err := hs.userService.Update(c.Req.Context(), &user.UpdateUserCommand{UserID: userID, IsDisabled: &isDisabled}); err != nil {
|
||||
if errors.Is(err, user.ErrUserNotFound) {
|
||||
return response.Error(http.StatusNotFound, user.ErrUserNotFound.Error(), nil)
|
||||
}
|
||||
@@ -361,8 +363,8 @@ func (hs *HTTPServer) AdminEnableUser(c *contextmodel.ReqContext) response.Respo
|
||||
return response.Error(http.StatusInternalServerError, "Could not enable external user", nil)
|
||||
}
|
||||
|
||||
disableCmd := user.DisableUserCommand{UserID: userID, IsDisabled: false}
|
||||
if err := hs.userService.Disable(c.Req.Context(), &disableCmd); err != nil {
|
||||
isDisabled := true
|
||||
if err := hs.userService.Update(c.Req.Context(), &user.UpdateUserCommand{UserID: userID, IsDisabled: &isDisabled}); err != nil {
|
||||
if errors.Is(err, user.ErrUserNotFound) {
|
||||
return response.Error(http.StatusNotFound, user.ErrUserNotFound.Error(), nil)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user