summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mattermost.go22
1 files changed, 21 insertions, 1 deletions
diff --git a/mattermost.go b/mattermost.go
index 6fe285d58..6073f37f4 100644
--- a/mattermost.go
+++ b/mattermost.go
@@ -483,6 +483,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
@@ -495,7 +496,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
@@ -609,6 +610,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