|
|
@ -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)
|
|
|
|