fix(events): defer event dispatch for team operations
Convert events.Dispatch to events.DispatchOnCommit in team and team member CRUD. Also removes premature s.Commit() from TeamMember.Delete since the handler manages the transaction lifecycle. Refs #2315
This commit is contained in:
parent
dd7f7de518
commit
8afbdf2deb
|
|
@ -70,11 +70,12 @@ func (tm *TeamMember) Create(s *xorm.Session, a web.Auth) (err error) {
|
|||
}
|
||||
|
||||
doer, _ := user2.GetFromAuth(a)
|
||||
return events.Dispatch(&TeamMemberAddedEvent{
|
||||
events.DispatchOnCommit(s, &TeamMemberAddedEvent{
|
||||
Team: team,
|
||||
Member: member,
|
||||
Doer: doer,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
// Delete deletes a user from a team
|
||||
|
|
@ -119,17 +120,13 @@ func (tm *TeamMember) Delete(s *xorm.Session, a web.Auth) (err error) {
|
|||
return err
|
||||
}
|
||||
|
||||
err = s.Commit()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
doer, _ := user2.GetFromAuth(a)
|
||||
return events.Dispatch(&TeamMemberRemovedEvent{
|
||||
events.DispatchOnCommit(s, &TeamMemberRemovedEvent{
|
||||
Team: t,
|
||||
Member: user,
|
||||
Doer: doer,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
func (tm *TeamMember) MembershipExists(s *xorm.Session) (exists bool, err error) {
|
||||
|
|
|
|||
|
|
@ -213,10 +213,11 @@ func (t *Team) CreateNewTeam(s *xorm.Session, a web.Auth, firstUserShouldBeAdmin
|
|||
return err
|
||||
}
|
||||
|
||||
return events.Dispatch(&TeamCreatedEvent{
|
||||
events.DispatchOnCommit(s, &TeamCreatedEvent{
|
||||
Team: t,
|
||||
Doer: a,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
// ReadOne implements the CRUD method to get one team
|
||||
|
|
@ -352,10 +353,11 @@ func (t *Team) Delete(s *xorm.Session, a web.Auth) (err error) {
|
|||
return
|
||||
}
|
||||
|
||||
return events.Dispatch(&TeamDeletedEvent{
|
||||
events.DispatchOnCommit(s, &TeamDeletedEvent{
|
||||
Team: t,
|
||||
Doer: a,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
// Update is the handler to create a team
|
||||
|
|
|
|||
Loading…
Reference in New Issue