|
|
@ -10,6 +10,16 @@ import ( |
|
|
|
"github.com/gogits/gogs/modules/base" |
|
|
|
"github.com/gogits/gogs/modules/base" |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsOrgOwner returns true if given user is in the owner team.
|
|
|
|
|
|
|
|
func (org *User) IsOrgOwner(uid int64) bool { |
|
|
|
|
|
|
|
return IsOrganizationOwner(org.Id, uid) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsOrgMember returns true if given user is member of organization.
|
|
|
|
|
|
|
|
func (org *User) IsOrgMember(uid int64) bool { |
|
|
|
|
|
|
|
return IsOrganizationMember(org.Id, uid) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// GetOwnerTeam returns owner team of organization.
|
|
|
|
// GetOwnerTeam returns owner team of organization.
|
|
|
|
func (org *User) GetOwnerTeam() (*Team, error) { |
|
|
|
func (org *User) GetOwnerTeam() (*Team, error) { |
|
|
|
t := &Team{ |
|
|
|
t := &Team{ |
|
|
@ -167,6 +177,18 @@ type Team struct { |
|
|
|
RepoIds string `xorm:"TEXT"` |
|
|
|
RepoIds string `xorm:"TEXT"` |
|
|
|
NumMembers int |
|
|
|
NumMembers int |
|
|
|
NumRepos int |
|
|
|
NumRepos int |
|
|
|
|
|
|
|
Members []*User `xorm:"-"` |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsTeamMember returns true if given user is a member of team.
|
|
|
|
|
|
|
|
func (t *Team) IsMember(uid int64) bool { |
|
|
|
|
|
|
|
return IsTeamMember(t.OrgId, t.Id, uid) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// GetMembers returns all members in given team of organization.
|
|
|
|
|
|
|
|
func (t *Team) GetMembers() (err error) { |
|
|
|
|
|
|
|
t.Members, err = GetTeamMembers(t.OrgId, t.Id) |
|
|
|
|
|
|
|
return err |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// NewTeam creates a record of new team.
|
|
|
|
// NewTeam creates a record of new team.
|
|
|
@ -205,6 +227,18 @@ type OrgUser struct { |
|
|
|
NumTeam int |
|
|
|
NumTeam int |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsOrganizationOwner returns true if given user is in the owner team.
|
|
|
|
|
|
|
|
func IsOrganizationOwner(orgId, uid int64) bool { |
|
|
|
|
|
|
|
has, _ := x.Where("is_owner=?", true).And("uid=?", uid).And("org_id=?", orgId).Get(new(OrgUser)) |
|
|
|
|
|
|
|
return has |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsOrganizationMember returns true if given user is member of organization.
|
|
|
|
|
|
|
|
func IsOrganizationMember(orgId, uid int64) bool { |
|
|
|
|
|
|
|
has, _ := x.Where("uid=?", uid).And("org_id=?", orgId).Get(new(OrgUser)) |
|
|
|
|
|
|
|
return has |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// GetOrgUsersByUserId returns all organization-user relations by user ID.
|
|
|
|
// GetOrgUsersByUserId returns all organization-user relations by user ID.
|
|
|
|
func GetOrgUsersByUserId(uid int64) ([]*OrgUser, error) { |
|
|
|
func GetOrgUsersByUserId(uid int64) ([]*OrgUser, error) { |
|
|
|
ous := make([]*OrgUser, 0, 10) |
|
|
|
ous := make([]*OrgUser, 0, 10) |
|
|
@ -219,18 +253,6 @@ func GetOrgUsersByOrgId(orgId int64) ([]*OrgUser, error) { |
|
|
|
return ous, err |
|
|
|
return ous, err |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// IsOrganizationOwner returns true if given user is in the owner team.
|
|
|
|
|
|
|
|
func IsOrganizationOwner(orgId, uid int64) bool { |
|
|
|
|
|
|
|
has, _ := x.Where("is_owner=?", true).Get(&OrgUser{Uid: uid, OrgId: orgId}) |
|
|
|
|
|
|
|
return has |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsOrganizationMember returns true if given user is member of organization.
|
|
|
|
|
|
|
|
func IsOrganizationMember(orgId, uid int64) bool { |
|
|
|
|
|
|
|
has, _ := x.Get(&OrgUser{Uid: uid, OrgId: orgId}) |
|
|
|
|
|
|
|
return has |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ___________ ____ ___
|
|
|
|
// ___________ ____ ___
|
|
|
|
// \__ ___/___ _____ _____ | | \______ ___________
|
|
|
|
// \__ ___/___ _____ _____ | | \______ ___________
|
|
|
|
// | |_/ __ \\__ \ / \| | / ___// __ \_ __ \
|
|
|
|
// | |_/ __ \\__ \ / \| | / ___// __ \_ __ \
|
|
|
@ -246,6 +268,12 @@ type TeamUser struct { |
|
|
|
TeamId int64 |
|
|
|
TeamId int64 |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// IsTeamMember returns true if given user is a member of team.
|
|
|
|
|
|
|
|
func IsTeamMember(orgId, teamId, uid int64) bool { |
|
|
|
|
|
|
|
has, _ := x.Where("uid=?", uid).And("org_id=?", orgId).And("team_id=?", teamId).Get(new(TeamUser)) |
|
|
|
|
|
|
|
return has |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// GetTeamMembers returns all members in given team of organization.
|
|
|
|
// GetTeamMembers returns all members in given team of organization.
|
|
|
|
func GetTeamMembers(orgId, teamId int64) ([]*User, error) { |
|
|
|
func GetTeamMembers(orgId, teamId int64) ([]*User, error) { |
|
|
|
tus := make([]*TeamUser, 0, 10) |
|
|
|
tus := make([]*TeamUser, 0, 10) |
|
|
|