diff options
Diffstat (limited to 'mattermost.go')
-rw-r--r-- | mattermost.go | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/mattermost.go b/mattermost.go index 85263e737..44eed457d 100644 --- a/mattermost.go +++ b/mattermost.go @@ -542,6 +542,7 @@ func convertTeamTo30(primaryTeamName string, team *TeamForUpgrade, uniqueEmails for _, user := range users { shouldUpdateUser := false + shouldUpdateRole := false previousRole := user.Roles previousEmail := user.Email previousUsername := user.Username @@ -554,7 +555,7 @@ func convertTeamTo30(primaryTeamName string, team *TeamForUpgrade, uniqueEmails if model.IsInRole(user.Roles, model.ROLE_TEAM_ADMIN) { member.Roles = model.ROLE_TEAM_ADMIN user.Roles = "" - shouldUpdateUser = true + shouldUpdateRole = true } exists := false @@ -668,6 +669,25 @@ func convertTeamTo30(primaryTeamName string, team *TeamForUpgrade, uniqueEmails } } + if shouldUpdateRole { + if _, err := store.GetMaster().Exec(` + UPDATE Users + SET + Roles = '' + WHERE + Id = :Id + `, + map[string]interface{}{ + "Id": user.Id, + }, + ); err != nil { + l4g.Error("Failed to update user role %v details=%v", user.Email, err) + flushLogAndExit(1) + } + + l4g.Info("modified user_id=%v, changed roles from=%v to=%v", user.Id, previousRole, user.Roles) + } + uniqueEmails[user.Email] = true uniqueUsernames[user.Username] = true |