@@ -460,21 +460,21 @@ func removeOrgUser(sess *xorm.Session, orgID, userID int64) error {
460460 return nil
461461 }
462462
463- org , err := GetUserByID ( orgID )
463+ org , err := getUserByID ( sess , orgID )
464464 if err != nil {
465465 return fmt .Errorf ("GetUserByID [%d]: %v" , orgID , err )
466466 }
467467
468468 // Check if the user to delete is the last member in owner team.
469- if isOwner , err := IsOrganizationOwner ( orgID , userID ); err != nil {
469+ if isOwner , err := isOrganizationOwner ( sess , orgID , userID ); err != nil {
470470 return err
471471 } else if isOwner {
472- t , err := org .GetOwnerTeam ( )
472+ t , err := org .getOwnerTeam ( sess )
473473 if err != nil {
474474 return err
475475 }
476476 if t .NumMembers == 1 {
477- if err := t .GetMembers ( ); err != nil {
477+ if err := t .getMembers ( sess ); err != nil {
478478 return err
479479 }
480480 if t .Members [0 ].ID == userID {
@@ -490,7 +490,7 @@ func removeOrgUser(sess *xorm.Session, orgID, userID int64) error {
490490 }
491491
492492 // Delete all repository accesses and unwatch them.
493- env , err := org .AccessibleReposEnv ( userID )
493+ env , err := org .accessibleReposEnv ( sess , userID )
494494 if err != nil {
495495 return fmt .Errorf ("AccessibleReposEnv: %v" , err )
496496 }
@@ -618,16 +618,26 @@ type accessibleReposEnv struct {
618618 org * User
619619 userID int64
620620 teamIDs []int64
621+ e Engine
621622}
622623
623624// AccessibleReposEnv an AccessibleReposEnvironment for the repositories in `org`
624625// that are accessible to the specified user.
625626func (org * User ) AccessibleReposEnv (userID int64 ) (AccessibleReposEnvironment , error ) {
626- teamIDs , err := org .GetUserTeamIDs (userID )
627+ return org .accessibleReposEnv (x , userID )
628+ }
629+
630+ func (org * User ) accessibleReposEnv (e Engine , userID int64 ) (AccessibleReposEnvironment , error ) {
631+ teamIDs , err := org .getUserTeamIDs (e , userID )
627632 if err != nil {
628633 return nil , err
629634 }
630- return & accessibleReposEnv {org : org , userID : userID , teamIDs : teamIDs }, nil
635+ return & accessibleReposEnv {
636+ org : org ,
637+ userID : userID ,
638+ teamIDs : teamIDs ,
639+ e : e ,
640+ }, nil
631641}
632642
633643func (env * accessibleReposEnv ) cond () builder.Cond {
@@ -642,7 +652,7 @@ func (env *accessibleReposEnv) cond() builder.Cond {
642652}
643653
644654func (env * accessibleReposEnv ) CountRepos () (int64 , error ) {
645- repoCount , err := x .
655+ repoCount , err := env . e .
646656 Join ("INNER" , "team_repo" , "`team_repo`.repo_id=`repository`.id" ).
647657 Where (env .cond ()).
648658 Distinct ("`repository`.id" ).
@@ -659,7 +669,7 @@ func (env *accessibleReposEnv) RepoIDs(page, pageSize int) ([]int64, error) {
659669 }
660670
661671 repoIDs := make ([]int64 , 0 , pageSize )
662- return repoIDs , x .
672+ return repoIDs , env . e .
663673 Table ("repository" ).
664674 Join ("INNER" , "team_repo" , "`team_repo`.repo_id=`repository`.id" ).
665675 Where (env .cond ()).
@@ -681,14 +691,14 @@ func (env *accessibleReposEnv) Repos(page, pageSize int) ([]*Repository, error)
681691 return repos , nil
682692 }
683693
684- return repos , x .
694+ return repos , env . e .
685695 In ("`repository`.id" , repoIDs ).
686696 Find (& repos )
687697}
688698
689699func (env * accessibleReposEnv ) MirrorRepoIDs () ([]int64 , error ) {
690700 repoIDs := make ([]int64 , 0 , 10 )
691- return repoIDs , x .
701+ return repoIDs , env . e .
692702 Table ("repository" ).
693703 Join ("INNER" , "team_repo" , "`team_repo`.repo_id=`repository`.id AND `repository`.is_mirror=?" , true ).
694704 Where (env .cond ()).
@@ -709,7 +719,7 @@ func (env *accessibleReposEnv) MirrorRepos() ([]*Repository, error) {
709719 return repos , nil
710720 }
711721
712- return repos , x .
722+ return repos , env . e .
713723 In ("`repository`.id" , repoIDs ).
714724 Find (& repos )
715725}
0 commit comments