remove team-units if org gets deleted
This commit is contained in:
parent
d7b0a496b6
commit
f5a346581f
|
|
@ -21,6 +21,7 @@ func moveTeamUnitsToTeamUnitTable(x *xorm.Engine) error {
|
||||||
// TeamUnit see models/org_team.go
|
// TeamUnit see models/org_team.go
|
||||||
type TeamUnit struct {
|
type TeamUnit struct {
|
||||||
ID int64 `xorm:"pk autoincr"`
|
ID int64 `xorm:"pk autoincr"`
|
||||||
|
OrgID int64 `xorm:"INDEX"`
|
||||||
TeamID int64 `xorm:"UNIQUE(s)"`
|
TeamID int64 `xorm:"UNIQUE(s)"`
|
||||||
Type int `xorm:"UNIQUE(s)"`
|
Type int `xorm:"UNIQUE(s)"`
|
||||||
}
|
}
|
||||||
|
|
@ -59,6 +60,7 @@ func moveTeamUnitsToTeamUnitTable(x *xorm.Engine) error {
|
||||||
var units = make([]TeamUnit, 0, len(unitTypes))
|
var units = make([]TeamUnit, 0, len(unitTypes))
|
||||||
for _, tp := range unitTypes {
|
for _, tp := range unitTypes {
|
||||||
units = append(units, TeamUnit{
|
units = append(units, TeamUnit{
|
||||||
|
OrgID: team.OrgID,
|
||||||
TeamID: team.ID,
|
TeamID: team.ID,
|
||||||
Type: tp,
|
Type: tp,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -163,6 +163,7 @@ func CreateOrganization(org, owner *User) (err error) {
|
||||||
var units = make([]TeamUnit, 0, len(allRepUnitTypes))
|
var units = make([]TeamUnit, 0, len(allRepUnitTypes))
|
||||||
for _, tp := range allRepUnitTypes {
|
for _, tp := range allRepUnitTypes {
|
||||||
units = append(units, TeamUnit{
|
units = append(units, TeamUnit{
|
||||||
|
OrgID: org.ID,
|
||||||
TeamID: t.ID,
|
TeamID: t.ID,
|
||||||
Type: tp,
|
Type: tp,
|
||||||
})
|
})
|
||||||
|
|
@ -251,6 +252,7 @@ func deleteOrg(e *xorm.Session, u *User) error {
|
||||||
&Team{OrgID: u.ID},
|
&Team{OrgID: u.ID},
|
||||||
&OrgUser{OrgID: u.ID},
|
&OrgUser{OrgID: u.ID},
|
||||||
&TeamUser{OrgID: u.ID},
|
&TeamUser{OrgID: u.ID},
|
||||||
|
&TeamUnit{OrgID: u.ID},
|
||||||
); err != nil {
|
); err != nil {
|
||||||
return fmt.Errorf("deleteBeans: %v", err)
|
return fmt.Errorf("deleteBeans: %v", err)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -726,6 +726,7 @@ func GetTeamsWithAccessToRepo(orgID, repoID int64, mode AccessMode) ([]*Team, er
|
||||||
// TeamUnit describes all units of a repository
|
// TeamUnit describes all units of a repository
|
||||||
type TeamUnit struct {
|
type TeamUnit struct {
|
||||||
ID int64 `xorm:"pk autoincr"`
|
ID int64 `xorm:"pk autoincr"`
|
||||||
|
OrgID int64 `xorm:"INDEX"`
|
||||||
TeamID int64 `xorm:"UNIQUE(s)"`
|
TeamID int64 `xorm:"UNIQUE(s)"`
|
||||||
Type UnitType `xorm:"UNIQUE(s)"`
|
Type UnitType `xorm:"UNIQUE(s)"`
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -185,7 +185,8 @@ func NewTeamPost(ctx *context.Context, form auth.CreateTeamForm) {
|
||||||
var units = make([]*models.TeamUnit, 0, len(form.Units))
|
var units = make([]*models.TeamUnit, 0, len(form.Units))
|
||||||
for _, tp := range form.Units {
|
for _, tp := range form.Units {
|
||||||
units = append(units, &models.TeamUnit{
|
units = append(units, &models.TeamUnit{
|
||||||
Type: tp,
|
OrgID: ctx.Org.Organization.ID,
|
||||||
|
Type: tp,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
t.Units = units
|
t.Units = units
|
||||||
|
|
@ -273,6 +274,7 @@ func EditTeamPost(ctx *context.Context, form auth.CreateTeamForm) {
|
||||||
var units = make([]models.TeamUnit, 0, len(form.Units))
|
var units = make([]models.TeamUnit, 0, len(form.Units))
|
||||||
for _, tp := range form.Units {
|
for _, tp := range form.Units {
|
||||||
units = append(units, models.TeamUnit{
|
units = append(units, models.TeamUnit{
|
||||||
|
OrgID: t.OrgID,
|
||||||
TeamID: t.ID,
|
TeamID: t.ID,
|
||||||
Type: tp,
|
Type: tp,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user