aboutsummaryrefslogtreecommitdiffstats
path: root/models/repo.go
diff options
context:
space:
mode:
Diffstat (limited to 'models/repo.go')
-rw-r--r--models/repo.go18
1 files changed, 5 insertions, 13 deletions
diff --git a/models/repo.go b/models/repo.go
index 7f2be502a4..d1cc290c44 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -365,22 +365,14 @@ func (repo *Repository) getUnitsByUserID(e Engine, userID int64, isAdmin bool) (
return err
}
- var allTypes = make(map[UnitType]struct{}, len(allRepUnitTypes))
- for _, team := range teams {
- // Administrators can not be limited
- if team.Authorize >= AccessModeAdmin {
- return nil
- }
- for _, unitType := range team.UnitTypes {
- allTypes[unitType] = struct{}{}
- }
- }
-
// unique
var newRepoUnits = make([]*RepoUnit, 0, len(repo.Units))
for _, u := range repo.Units {
- if _, ok := allTypes[u.Type]; ok {
- newRepoUnits = append(newRepoUnits, u)
+ for _, team := range teams {
+ if team.UnitEnabled(u.Type) {
+ newRepoUnits = append(newRepoUnits, u)
+ break
+ }
}
}