MM-15201: Don't check for non-members unless the channel is group-constrained. (#10657)
Этот коммит содержится в:
коммит произвёл
Jesús Espino
родитель
17092e7e48
Коммит
1b9d937962
@@ -128,13 +128,20 @@ func (a *App) SendNotifications(post *model.Post, team *model.Team, channel *mod
|
||||
if result := <-a.Srv.Store.User().GetProfilesByUsernames(m.OtherPotentialMentions, team.Id); result.Err == nil {
|
||||
channelMentions := model.UserSlice(result.Data.([]*model.User))
|
||||
|
||||
nonMemberIDs, err := a.FilterNonGroupChannelMembers(channelMentions.IDs(), channel)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
var outOfChannelMentions model.UserSlice
|
||||
var outOfGroupsMentions model.UserSlice
|
||||
|
||||
outOfChannelMentions := channelMentions.FilterWithoutID(nonMemberIDs)
|
||||
outOfGroupsMentions := channelMentions.FilterByID(nonMemberIDs)
|
||||
if channel.GroupConstrained != nil && *channel.GroupConstrained {
|
||||
nonMemberIDs, err := a.FilterNonGroupChannelMembers(channelMentions.IDs(), channel)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
outOfChannelMentions = channelMentions.FilterWithoutID(nonMemberIDs)
|
||||
outOfGroupsMentions = channelMentions.FilterByID(nonMemberIDs)
|
||||
} else {
|
||||
outOfChannelMentions = channelMentions
|
||||
}
|
||||
|
||||
if channel.Type != model.CHANNEL_GROUP {
|
||||
a.Srv.Go(func() {
|
||||
|
||||
Ссылка в новой задаче
Block a user