From 0562f952edf14324bbc25be4181369acf27fe1a1 Mon Sep 17 00:00:00 2001 From: Andrei Prigorshnev Date: Tue, 21 Mar 2023 19:44:24 +0400 Subject: [PATCH] DEV: no need to pass down `skip_notifications` for expanding mentions (#20683) This refactoring simplifies ChatNotifier a bit. I wanted to drop that argument for expand_direct_mentions too, but that needs a bit deeper refactoring, so it's better to do it separately. Co-authored-by: Joffrey JAFFEUX --- plugins/chat/lib/chat/notifier.rb | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/plugins/chat/lib/chat/notifier.rb b/plugins/chat/lib/chat/notifier.rb index e0805b5b274..8527e4ae205 100644 --- a/plugins/chat/lib/chat/notifier.rb +++ b/plugins/chat/lib/chat/notifier.rb @@ -130,9 +130,11 @@ module Chat already_covered_ids = [] expand_direct_mentions(to_notify, already_covered_ids, skip_notifications) - expand_group_mentions(to_notify, already_covered_ids, skip_notifications) - expand_here_mention(to_notify, already_covered_ids, skip_notifications) - expand_global_mention(to_notify, already_covered_ids, skip_notifications) + if !skip_notifications + expand_group_mentions(to_notify, already_covered_ids) + expand_here_mention(to_notify, already_covered_ids) + expand_global_mention(to_notify, already_covered_ids) + end filter_users_ignoring_or_muting_creator(to_notify, already_covered_ids) @@ -140,10 +142,10 @@ module Chat end end - def expand_global_mention(to_notify, already_covered_ids, skip) + def expand_global_mention(to_notify, already_covered_ids) has_all_mention = @mentions.has_global_mention - if has_all_mention && @chat_channel.allow_channel_wide_mentions && !skip + if has_all_mention && @chat_channel.allow_channel_wide_mentions to_notify[:global_mentions] = @mentions .global_mentions .not_suspended @@ -157,10 +159,10 @@ module Chat end end - def expand_here_mention(to_notify, already_covered_ids, skip) + def expand_here_mention(to_notify, already_covered_ids) has_here_mention = @mentions.has_here_mention - if has_here_mention && @chat_channel.allow_channel_wide_mentions && !skip + if has_here_mention && @chat_channel.allow_channel_wide_mentions to_notify[:here_mentions] = @mentions .here_mentions .not_suspended @@ -212,8 +214,8 @@ module Chat already_covered_ids.concat(to_notify[:direct_mentions]) end - def expand_group_mentions(to_notify, already_covered_ids, skip) - return [] if skip || @mentions.visible_groups.empty? + def expand_group_mentions(to_notify, already_covered_ids) + return if @mentions.visible_groups.empty? reached_by_group = @mentions