From 5fe054333a2af1f61e704de3773989fc209b0c78 Mon Sep 17 00:00:00 2001 From: "dmitrii.pichenikin" Date: Fri, 13 Mar 2026 16:24:25 +0300 Subject: [PATCH] LP-5673: fixed a problem with duplicate notifications in a channel --- server/utils.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/server/utils.go b/server/utils.go index 56b284d..a44ce76 100644 --- a/server/utils.go +++ b/server/utils.go @@ -201,7 +201,14 @@ func (p *Plugin) notifyGrant(badgeID badgesmodel.BadgeID, granter string, grante p.mm.Log.Debug("notify subscription error", "err", err) } } - if inChannel { + alreadyNotified := false + for _, sub := range subs { + if sub == channelID { + alreadyNotified = true + break + } + } + if inChannel && !alreadyNotified { if !p.API.HasPermissionToChannel(granter, channelID, model.PERMISSION_CREATE_POST) { Tg := p.getT(granterUser.Locale) p.mm.Post.SendEphemeralPost(granter, &model.Post{Message: Tg("badges.notify.no_permission_channel", "У вас нет прав на отправку уведомления о выдаче в этот канал."), ChannelId: channelID})