diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/import.go | 2 | ||||
-rw-r--r-- | app/user.go | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/app/import.go b/app/import.go index b98128fb5..21ce0ba53 100644 --- a/app/import.go +++ b/app/import.go @@ -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 } } diff --git a/app/user.go b/app/user.go index e6ae7f174..a4513af9a 100644 --- a/app/user.go +++ b/app/user.go @@ -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 } |