diff options
author | George Goldberg <george@gberg.me> | 2017-03-30 02:10:51 +0100 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2017-03-29 21:10:51 -0400 |
commit | a4764a5c10ec59820eec7338d97be48d41c1a4d6 (patch) | |
tree | 665d61a0b0738b328b9d7514b8732a59787c20ce /app | |
parent | 6d6b8134462d9e718f21e76f9c47f73604574c9b (diff) | |
download | chat-a4764a5c10ec59820eec7338d97be48d41c1a4d6.tar.gz chat-a4764a5c10ec59820eec7338d97be48d41c1a4d6.tar.bz2 chat-a4764a5c10ec59820eec7338d97be48d41c1a4d6.zip |
PLT-6083: API to get users not in a specific team. (#5888)
Diffstat (limited to 'app')
-rw-r--r-- | app/user.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/app/user.go b/app/user.go index 40651f56a..1c2aca34f 100644 --- a/app/user.go +++ b/app/user.go @@ -447,6 +447,14 @@ func GetUsersInTeam(teamId string, offset int, limit int) ([]*model.User, *model } } +func GetUsersNotInTeam(teamId string, offset int, limit int) ([]*model.User, *model.AppError) { + if result := <-Srv.Store.User().GetProfilesNotInTeam(teamId, offset, limit); result.Err != nil { + return nil, result.Err + } else { + return result.Data.([]*model.User), nil + } +} + func GetUsersInTeamMap(teamId string, offset int, limit int, asAdmin bool) (map[string]*model.User, *model.AppError) { users, err := GetUsersInTeam(teamId, offset, limit) if err != nil { @@ -476,10 +484,27 @@ func GetUsersInTeamPage(teamId string, page int, perPage int, asAdmin bool) ([]* return users, nil } +func GetUsersNotInTeamPage(teamId string, page int, perPage int, asAdmin bool) ([]*model.User, *model.AppError) { + users, err := GetUsersNotInTeam(teamId, page*perPage, perPage) + if err != nil { + return nil, err + } + + for _, user := range users { + SanitizeProfile(user, asAdmin) + } + + return users, nil +} + func GetUsersInTeamEtag(teamId string) string { return (<-Srv.Store.User().GetEtagForProfiles(teamId)).Data.(string) } +func GetUsersNotInTeamEtag(teamId string) string { + return (<-Srv.Store.User().GetEtagForProfilesNotInTeam(teamId)).Data.(string) +} + func GetUsersInChannel(channelId string, offset int, limit int) ([]*model.User, *model.AppError) { if result := <-Srv.Store.User().GetProfilesInChannel(channelId, offset, limit); result.Err != nil { return nil, result.Err |