PLT-7978 Add websocket event for user role update (#7745)
* Add websocket event for user role update * Fix tests * More test fixes
Этот коммит содержится в:
коммит произвёл
George Goldberg
родитель
6886de04d4
Коммит
06ec648cf3
@@ -657,7 +657,7 @@ func (a *App) ImportUser(data *UserImportData, dryRun bool) *model.AppError {
|
||||
}
|
||||
}
|
||||
if hasUserRolesChanged {
|
||||
if savedUser, err = a.UpdateUserRoles(user.Id, roles); err != nil {
|
||||
if savedUser, err = a.UpdateUserRoles(user.Id, roles, false); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1188,7 +1188,7 @@ func (a *App) DeleteToken(token *model.Token) *model.AppError {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (a *App) UpdateUserRoles(userId string, newRoles string) (*model.User, *model.AppError) {
|
||||
func (a *App) UpdateUserRoles(userId string, newRoles string, sendWebSocketEvent bool) (*model.User, *model.AppError) {
|
||||
var user *model.User
|
||||
var err *model.AppError
|
||||
if user, err = a.GetUser(userId); err != nil {
|
||||
@@ -1214,6 +1214,13 @@ func (a *App) UpdateUserRoles(userId string, newRoles string) (*model.User, *mod
|
||||
|
||||
a.ClearSessionCacheForUser(user.Id)
|
||||
|
||||
if sendWebSocketEvent {
|
||||
message := model.NewWebSocketEvent(model.WEBSOCKET_EVENT_USER_ROLE_UPDATED, "", "", user.Id, nil)
|
||||
message.Add("user_id", user.Id)
|
||||
message.Add("roles", newRoles)
|
||||
a.Publish(message)
|
||||
}
|
||||
|
||||
return ruser, nil
|
||||
}
|
||||
|
||||
|
||||
Ссылка в новой задаче
Block a user