Commit fb5c59c6 by supercharlesliu

Add GET /api/users/:id/teams for orgAdmin

parent 435079c6
...@@ -140,6 +140,7 @@ func (hs *HTTPServer) registerRoutes() { ...@@ -140,6 +140,7 @@ func (hs *HTTPServer) registerRoutes() {
usersRoute.Get("/", Wrap(SearchUsers)) usersRoute.Get("/", Wrap(SearchUsers))
usersRoute.Get("/search", Wrap(SearchUsersWithPaging)) usersRoute.Get("/search", Wrap(SearchUsersWithPaging))
usersRoute.Get("/:id", Wrap(GetUserByID)) usersRoute.Get("/:id", Wrap(GetUserByID))
usersRoute.Get("/:id/teams", Wrap(GetUserTeams))
usersRoute.Get("/:id/orgs", Wrap(GetUserOrgList)) usersRoute.Get("/:id/orgs", Wrap(GetUserOrgList))
// query parameters /users/lookup?loginOrEmail=admin@example.com // query parameters /users/lookup?loginOrEmail=admin@example.com
usersRoute.Get("/lookup", Wrap(GetUserByLoginOrEmail)) usersRoute.Get("/lookup", Wrap(GetUserByLoginOrEmail))
......
...@@ -113,7 +113,16 @@ func GetSignedInUserOrgList(c *m.ReqContext) Response { ...@@ -113,7 +113,16 @@ func GetSignedInUserOrgList(c *m.ReqContext) Response {
// GET /api/user/teams // GET /api/user/teams
func GetSignedInUserTeamList(c *m.ReqContext) Response { func GetSignedInUserTeamList(c *m.ReqContext) Response {
query := m.GetTeamsByUserQuery{OrgId: c.OrgId, UserId: c.UserId} return getUserTeamList(c.OrgId, c.UserId)
}
// GET /api/users/:id/teams
func GetUserTeams(c *m.ReqContext) Response {
return getUserTeamList(c.OrgId, c.ParamsInt64("id"))
}
func getUserTeamList(userID int64, orgID int64) Response {
query := m.GetTeamsByUserQuery{OrgId: orgID, UserId: userID}
if err := bus.Dispatch(&query); err != nil { if err := bus.Dispatch(&query); err != nil {
return Error(500, "Failed to get user teams", err) return Error(500, "Failed to get user teams", err)
...@@ -122,11 +131,10 @@ func GetSignedInUserTeamList(c *m.ReqContext) Response { ...@@ -122,11 +131,10 @@ func GetSignedInUserTeamList(c *m.ReqContext) Response {
for _, team := range query.Result { for _, team := range query.Result {
team.AvatarUrl = dtos.GetGravatarUrlWithDefault(team.Email, team.Name) team.AvatarUrl = dtos.GetGravatarUrlWithDefault(team.Email, team.Name)
} }
return JSON(200, query.Result) return JSON(200, query.Result)
} }
// GET /api/user/:id/orgs // GET /api/users/:id/orgs
func GetUserOrgList(c *m.ReqContext) Response { func GetUserOrgList(c *m.ReqContext) Response {
return getUserOrgList(c.ParamsInt64(":id")) return getUserOrgList(c.ParamsInt64(":id"))
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment