diff options
author | Harshit Bansal <harshitbansal2015@gmail.com> | 2019-01-17 06:09:50 +0530 |
---|---|---|
committer | techknowlogick <hello@techknowlogick.com> | 2019-01-16 19:39:50 -0500 |
commit | 5ac6da3c41f628f31b2805bfc422a3abb6b76d6b (patch) | |
tree | 590734fcb13c5250db894ffa19562f9a5e82b9af /models/org_team.go | |
parent | 734834a6761d446a6e0dc25a104e8272143f6045 (diff) | |
download | gitea-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.go | 20 |
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, |