aboutsummaryrefslogtreecommitdiffstats
path: root/models/org_team.go
diff options
context:
space:
mode:
authorHarshit Bansal <harshitbansal2015@gmail.com>2019-01-17 06:09:50 +0530
committertechknowlogick <hello@techknowlogick.com>2019-01-16 19:39:50 -0500
commit5ac6da3c41f628f31b2805bfc422a3abb6b76d6b (patch)
tree590734fcb13c5250db894ffa19562f9a5e82b9af /models/org_team.go
parent734834a6761d446a6e0dc25a104e8272143f6045 (diff)
downloadgitea-5ac6da3c41f628f31b2805bfc422a3abb6b76d6b.tar.gz
gitea-5ac6da3c41f628f31b2805bfc422a3abb6b76d6b.zip
api: Add missing GET teams endpoints (#5382)
* api: Add an endpoint to list a particular member of team. * models: Rename `GetUserTeams()` to `GetUserOrgTeams()` in `org_team` model. `GetUserTeams()` sounds a bit misnomer since it actually returns the teams that user belongs to in a given organization rather than all the teams across all the organization that the user has joined. * models: Add `GetUserTeams()`. Returns all the teams that a user belongs to. * api: Add an endpoint for GET '/user/teams'. A GET request to this endpoint lists all the teams that a user belongs to.
Diffstat (limited to 'models/org_team.go')
-rw-r--r--models/org_team.go20
1 files changed, 16 insertions, 4 deletions
diff --git a/models/org_team.go b/models/org_team.go
index 34e1b4db83..2ab807b49b 100644
--- a/models/org_team.go
+++ b/models/org_team.go
@@ -543,7 +543,14 @@ func GetTeamMembers(teamID int64) ([]*User, error) {
return getTeamMembers(x, teamID)
}
-func getUserTeams(e Engine, orgID, userID int64) (teams []*Team, err error) {
+func getUserTeams(e Engine, userID int64) (teams []*Team, err error) {
+ return teams, e.
+ Join("INNER", "team_user", "team_user.team_id = team.id").
+ Where("team_user.uid=?", userID).
+ Find(&teams)
+}
+
+func getUserOrgTeams(e Engine, orgID, userID int64) (teams []*Team, err error) {
return teams, e.
Join("INNER", "team_user", "team_user.team_id = team.id").
Where("team.org_id = ?", orgID).
@@ -561,9 +568,14 @@ func getUserRepoTeams(e Engine, orgID, userID, repoID int64) (teams []*Team, err
Find(&teams)
}
-// GetUserTeams returns all teams that user belongs to in given organization.
-func GetUserTeams(orgID, userID int64) ([]*Team, error) {
- return getUserTeams(x, orgID, userID)
+// GetUserOrgTeams returns all teams that user belongs to in given organization.
+func GetUserOrgTeams(orgID, userID int64) ([]*Team, error) {
+ return getUserOrgTeams(x, orgID, userID)
+}
+
+// GetUserTeams returns all teams that user belongs across all organizations.
+func GetUserTeams(userID int64) ([]*Team, error) {
+ return getUserTeams(x, userID)
}
// AddTeamMember adds new membership of given team to given organization,