diff --git a/app/models/concerns/streamable.rb b/app/models/concerns/streamable.rb index 58c15cfbc..910736dac 100644 --- a/app/models/concerns/streamable.rb +++ b/app/models/concerns/streamable.rb @@ -30,8 +30,12 @@ module Streamable false end + def needs_stream_entry? + account.local? + end + after_create do - account.stream_entries.create!(activity: self, hidden: hidden?) if account.local? + account.stream_entries.create!(activity: self, hidden: hidden?) if needs_stream_entry? end end end diff --git a/app/models/follow_request.rb b/app/models/follow_request.rb index 080c686e5..2755ba0ab 100644 --- a/app/models/follow_request.rb +++ b/app/models/follow_request.rb @@ -45,6 +45,10 @@ class FollowRequest < ApplicationRecord true end + def needs_stream_entry? + true + end + def title if destroyed? case @verb diff --git a/app/services/authorize_follow_service.rb b/app/services/authorize_follow_service.rb index 1590d8433..5370b4b61 100644 --- a/app/services/authorize_follow_service.rb +++ b/app/services/authorize_follow_service.rb @@ -7,5 +7,6 @@ class AuthorizeFollowService < BaseService follow_request = FollowRequest.find_by!(account: source_account, target_account: target_account) follow_request.authorize! NotificationWorker.perform_async(stream_entry_to_xml(follow_request.stream_entry), target_account.id, source_account.id) unless source_account.local? + follow_request.stream_entry.destroy end end diff --git a/app/services/reject_follow_service.rb b/app/services/reject_follow_service.rb index 0c568b981..a17d6a7be 100644 --- a/app/services/reject_follow_service.rb +++ b/app/services/reject_follow_service.rb @@ -7,5 +7,6 @@ class RejectFollowService < BaseService follow_request = FollowRequest.find_by!(account: source_account, target_account: target_account) follow_request.reject! NotificationWorker.perform_async(stream_entry_to_xml(follow_request.stream_entry), target_account.id, source_account.id) unless source_account.local? + follow_request.stream_entry.destroy end end