diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2017-06-06 14:39:31 -0400 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2017-06-06 14:39:31 -0400 |
commit | 4d7b3b5687afe8e1bc069bce21f399b2f8bd6187 (patch) | |
tree | 95c7f2e9a329022e41f4d492b1f5a9542c99c114 /store/sql_team_store.go | |
parent | 3dc625a8bdafd34f924a08938fedf13b271af24e (diff) | |
download | chat-4d7b3b5687afe8e1bc069bce21f399b2f8bd6187.tar.gz chat-4d7b3b5687afe8e1bc069bce21f399b2f8bd6187.tar.bz2 chat-4d7b3b5687afe8e1bc069bce21f399b2f8bd6187.zip |
PLT-6752/PLT-6755 Fixed users removed from a team counting against max team members (#6578)
* PLT-6752 Fixed users removed from a team counting against max team members
* Updated unit tests for max team members
* Fixed being able to have MaxUserPerTeam+1 users in a team
Diffstat (limited to 'store/sql_team_store.go')
-rw-r--r-- | store/sql_team_store.go | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/store/sql_team_store.go b/store/sql_team_store.go index e6df0b656..ae06ec743 100644 --- a/store/sql_team_store.go +++ b/store/sql_team_store.go @@ -489,12 +489,19 @@ func (s SqlTeamStore) SaveMember(member *model.TeamMember) StoreChannel { return } - if count, err := s.GetMaster().SelectInt("SELECT COUNT(0) FROM TeamMembers WHERE TeamId = :TeamId", map[string]interface{}{"TeamId": member.TeamId}); err != nil { + if count, err := s.GetMaster().SelectInt( + `SELECT + COUNT(0) + FROM + TeamMembers + WHERE + TeamId = :TeamId + AND DeleteAt = 0`, map[string]interface{}{"TeamId": member.TeamId}); err != nil { result.Err = model.NewLocAppError("SqlUserStore.Save", "store.sql_user.save.member_count.app_error", nil, "teamId="+member.TeamId+", "+err.Error()) storeChannel <- result close(storeChannel) return - } else if int(count) > utils.Cfg.TeamSettings.MaxUsersPerTeam { + } else if int(count) >= utils.Cfg.TeamSettings.MaxUsersPerTeam { result.Err = model.NewLocAppError("SqlUserStore.Save", "store.sql_user.save.max_accounts.app_error", nil, "teamId="+member.TeamId) storeChannel <- result close(storeChannel) |