Ver código fonte

api: add admin endpoint to get team members (#6101)

fixes #5877
Rui Santos 4 anos atrás
pai
commit
440b1ecbfd

+ 14 - 0
internal/route/api/v1/admin/org_team.go

@@ -60,3 +60,17 @@ func RemoveTeamMember(c *context.APIContext) {
 
 	c.NoContent()
 }
+
+func ListTeamMembers(c *context.APIContext) {
+	team := c.Org.Team
+	if err := team.GetMembers(); err != nil {
+		c.Error(err, "get team members")
+		return
+	}
+
+	apiMembers := make([]*api.User, len(team.Members))
+	for i := range team.Members {
+		apiMembers[i] = team.Members[i].APIFormat()
+	}
+	c.JSONSuccess(apiMembers)
+}

+ 1 - 0
internal/route/api/v1/api.go

@@ -396,6 +396,7 @@ func RegisterRoutes(m *macaron.Macaron) {
 
 			m.Group("/teams", func() {
 				m.Group("/:teamid", func() {
+					m.Get("/members", admin.ListTeamMembers)
 					m.Combo("/members/:username").
 						Put(admin.AddTeamMember).
 						Delete(admin.RemoveTeamMember)