diff options
author | ThibG <thib@sitedethib.com> | 2018-12-30 09:48:59 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2018-12-30 09:48:59 +0100 |
commit | 290932602b32e3bdc2a4c5cb278fb73755a2cd52 (patch) | |
tree | 45403aa491d707bd683197abf602b72dcaad2b9a /app/services/process_mentions_service.rb | |
parent | fb08039de58bee131e66c1a41db9d9f1f831d6e9 (diff) |
Reduce usage of LD signatures (#9659)
* Do not LDS-sign Follow, Accept, Reject, Undo, Block * Do not use LDS for Create activities of private toots * Minor cleanup * Ignore unsigned activities instead of misattributing them * Use status.distributable? instead of querying visibility directly
Diffstat (limited to 'app/services/process_mentions_service.rb')
-rw-r--r-- | app/services/process_mentions_service.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/app/services/process_mentions_service.rb b/app/services/process_mentions_service.rb index ec7d33b1d..2595c5fd3 100644 --- a/app/services/process_mentions_service.rb +++ b/app/services/process_mentions_service.rb @@ -60,11 +60,13 @@ class ProcessMentionsService < BaseService end def activitypub_json - @activitypub_json ||= Oj.dump(ActivityPub::LinkedDataSignature.new(ActiveModelSerializers::SerializableResource.new( + return @activitypub_json if defined?(@activitypub_json) + payload = ActiveModelSerializers::SerializableResource.new( @status, serializer: ActivityPub::ActivitySerializer, adapter: ActivityPub::Adapter - ).as_json).sign!(@status.account)) + ).as_json + @activitypub_json = Oj.dump(@status.distributable? ? ActivityPub::LinkedDataSignature.new(payload).sign!(@status.account) : payload) end def resolve_account_service |