Compare commits

...
This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.

1 Commits

Author SHA1 Message Date
Joffrey JAFFEUX
640e3b302b DEV: no need to pass down skip_notifications for expanding mentions
This refactoring simplifies `ChatNotifier` a bit. I want to drop that argument for `expand_direct_mentions` too, but that needs a bit deeper refactoring, so it's better to do it separately.
2023-03-18 16:44:30 +01:00

View File

@ -130,9 +130,11 @@ module Chat
already_covered_ids = [] already_covered_ids = []
expand_direct_mentions(to_notify, already_covered_ids, skip_notifications) expand_direct_mentions(to_notify, already_covered_ids, skip_notifications)
expand_group_mentions(to_notify, already_covered_ids, skip_notifications) if !skip_notifications
expand_here_mention(to_notify, already_covered_ids, skip_notifications) expand_group_mentions(to_notify, already_covered_ids)
expand_global_mention(to_notify, already_covered_ids, skip_notifications) 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) filter_users_ignoring_or_muting_creator(to_notify, already_covered_ids)
@ -140,10 +142,10 @@ module Chat
end end
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 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 to_notify[:global_mentions] = @mentions
.global_mentions .global_mentions
.not_suspended .not_suspended
@ -157,10 +159,10 @@ module Chat
end end
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 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 to_notify[:here_mentions] = @mentions
.here_mentions .here_mentions
.not_suspended .not_suspended
@ -212,8 +214,8 @@ module Chat
already_covered_ids.concat(to_notify[:direct_mentions]) already_covered_ids.concat(to_notify[:direct_mentions])
end end
def expand_group_mentions(to_notify, already_covered_ids, skip) def expand_group_mentions(to_notify, already_covered_ids)
return [] if skip || @mentions.visible_groups.empty? return if @mentions.visible_groups.empty?
reached_by_group = reached_by_group =
@mentions @mentions