Fix local quote notifications (#36091)

This commit is contained in:
Claire 2025-09-11 18:32:55 +02:00 committed by GitHub
parent 84d1ba980b
commit 946721fd0b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -40,6 +40,7 @@ class FanOutOnWriteService < BaseService
deliver_to_self!
unless @options[:skip_notifications]
notify_quoted_account!
notify_mentioned_accounts!
notify_about_update! if update?
end
@ -69,6 +70,12 @@ class FanOutOnWriteService < BaseService
FeedManager.instance.push_to_home(@account, @status, update: update?) if @account.local?
end
def notify_quoted_account!
return unless @status.quote&.quoted_account&.local? && @status.quote&.accepted?
LocalNotificationWorker.perform_async(@status.quote.quoted_account_id, @status.quote.id, 'Quote', 'quote')
end
def notify_mentioned_accounts!
@status.active_mentions.where.not(id: @options[:silenced_account_ids] || []).joins(:account).merge(Account.local).select(:id, :account_id).reorder(nil).find_in_batches do |mentions|
LocalNotificationWorker.push_bulk(mentions) do |mention|