|
|
|
@ -16,7 +16,7 @@ class ActivityPub::FetchRemoteStatusService < BaseService |
|
|
|
|
return if actor_id.nil? || !trustworthy_attribution?(@json['id'], actor_id) |
|
|
|
|
|
|
|
|
|
actor = ActivityPub::TagManager.instance.uri_to_resource(actor_id, Account) |
|
|
|
|
actor = ActivityPub::FetchRemoteAccountService.new.call(actor_id, id: true) if actor.nil? |
|
|
|
|
actor = ActivityPub::FetchRemoteAccountService.new.call(actor_id, id: true) if actor.nil? || needs_update(actor) |
|
|
|
|
|
|
|
|
|
return if actor.suspended? |
|
|
|
|
|
|
|
|
@ -44,4 +44,8 @@ class ActivityPub::FetchRemoteStatusService < BaseService |
|
|
|
|
def expected_type? |
|
|
|
|
%w(Note Article).include? @json['type'] |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
def needs_update(actor) |
|
|
|
|
actor.possibly_stale? |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|