From 5507154992eedd323385c37e59b2008586b9aaa0 Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Fri, 30 Jun 2017 12:07:23 -0400 Subject: Add some basic sorting support for GET /users endpoint (#6801) --- app/analytics.go | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) (limited to 'app/analytics.go') diff --git a/app/analytics.go b/app/analytics.go index 78e1fe7b4..35fbddd89 100644 --- a/app/analytics.go +++ b/app/analytics.go @@ -231,9 +231,38 @@ func GetAnalytics(name string, teamId string) (model.AnalyticsRows, *model.AppEr } func GetRecentlyActiveUsersForTeam(teamId string) (map[string]*model.User, *model.AppError) { - if result := <-Srv.Store.User().GetRecentlyActiveUsersForTeam(teamId); result.Err != nil { + if result := <-Srv.Store.User().GetRecentlyActiveUsersForTeam(teamId, 0, 100); result.Err != nil { return nil, result.Err } else { - return result.Data.(map[string]*model.User), nil + users := result.Data.([]*model.User) + userMap := make(map[string]*model.User) + + for _, user := range users { + userMap[user.Id] = user + } + + return userMap, nil + } +} + +func GetRecentlyActiveUsersForTeamPage(teamId string, page, perPage int, asAdmin bool) ([]*model.User, *model.AppError) { + var users []*model.User + if result := <-Srv.Store.User().GetRecentlyActiveUsersForTeam(teamId, page*perPage, perPage); result.Err != nil { + return nil, result.Err + } else { + users = result.Data.([]*model.User) } + + return sanitizeProfiles(users, asAdmin), nil +} + +func GetNewUsersForTeamPage(teamId string, page, perPage int, asAdmin bool) ([]*model.User, *model.AppError) { + var users []*model.User + if result := <-Srv.Store.User().GetNewUsersForTeam(teamId, page*perPage, perPage); result.Err != nil { + return nil, result.Err + } else { + users = result.Data.([]*model.User) + } + + return sanitizeProfiles(users, asAdmin), nil } -- cgit v1.2.3-1-g7c22