diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2018-11-09 14:16:52 +0800 |
---|---|---|
committer | Lauris BH <lauris@nix.lv> | 2018-11-09 08:16:52 +0200 |
commit | c5d098c32e85d2ac42d318de5a37b7bfe34dc8cc (patch) | |
tree | 936162de6faeafd899e7a0e05014287240f04955 /models/org_team.go | |
parent | 599adde1bc3670279d371fd9f2620c2829286bf6 (diff) | |
download | gitea-c5d098c32e85d2ac42d318de5a37b7bfe34dc8cc.tar.gz gitea-c5d098c32e85d2ac42d318de5a37b7bfe34dc8cc.zip |
fix bug when users have serval teams with different units on different repositories (#5307)
Diffstat (limited to 'models/org_team.go')
-rw-r--r-- | models/org_team.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/models/org_team.go b/models/org_team.go index 505f11d39d..ad11431a49 100644 --- a/models/org_team.go +++ b/models/org_team.go @@ -525,6 +525,16 @@ func getUserTeams(e Engine, orgID, userID int64) (teams []*Team, err error) { Find(&teams) } +func getUserRepoTeams(e Engine, orgID, userID, repoID int64) (teams []*Team, err error) { + return teams, e. + Join("INNER", "team_user", "team_user.team_id = team.id"). + Join("INNER", "team_repo", "team_repo.team_id = team.id"). + Where("team.org_id = ?", orgID). + And("team_user.uid=?", userID). + And("team_repo.repo_id=?", repoID). + 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) |