diff options
author | Benjamin Neff <benjamin@coding4coffee.ch> | 2018-01-27 05:47:50 +0300 |
---|---|---|
committer | Dennis Schubert <mail@dennis-schubert.de> | 2018-02-02 01:35:35 +0300 |
commit | b9787cc632b803e776efcaf8ddf517d98334f3ee (patch) | |
tree | 033d66dec9ffa647da8b613bb2b21d7088baecc2 /lib | |
parent | 815cf121abf45980d243ac52740dee8dc3ac6944 (diff) |
Start sending the blocking flag
Diffstat (limited to 'lib')
-rw-r--r-- | lib/diaspora/federated/contact_retraction.rb | 4 | ||||
-rw-r--r-- | lib/diaspora/federation/entities.rb | 13 | ||||
-rw-r--r-- | lib/diaspora/federation/mappings.rb | 1 |
3 files changed, 15 insertions, 3 deletions
diff --git a/lib/diaspora/federated/contact_retraction.rb b/lib/diaspora/federated/contact_retraction.rb index 57efd2f45..69ec85f7f 100644 --- a/lib/diaspora/federated/contact_retraction.rb +++ b/lib/diaspora/federated/contact_retraction.rb @@ -6,11 +6,11 @@ class ContactRetraction < Retraction end def self.retraction_data_for(target) - Diaspora::Federation::Entities.contact(target).to_h + Diaspora::Federation::Entities.build(target).to_h end def self.for(target) - target.receiving = false + target.receiving = false if target.is_a?(Contact) super end diff --git a/lib/diaspora/federation/entities.rb b/lib/diaspora/federation/entities.rb index e6dbff2a0..f8d8aa1a5 100644 --- a/lib/diaspora/federation/entities.rb +++ b/lib/diaspora/federation/entities.rb @@ -31,6 +31,16 @@ module Diaspora ) end + def self.block(block) + DiasporaFederation::Entities::Contact.new( + author: block.user.diaspora_handle, + recipient: block.person.diaspora_handle, + sharing: false, + following: false, + blocking: Block.exists?(user: block.user, person: block.person) + ) + end + def self.comment(comment) DiasporaFederation::Entities::Comment.new( { @@ -52,7 +62,8 @@ module Diaspora author: contact.user.diaspora_handle, recipient: contact.person.diaspora_handle, sharing: contact.receiving, - following: contact.receiving + following: contact.receiving, + blocking: Block.exists?(user: contact.user, person: contact.person) ) end diff --git a/lib/diaspora/federation/mappings.rb b/lib/diaspora/federation/mappings.rb index 91ccefee6..ac10929c5 100644 --- a/lib/diaspora/federation/mappings.rb +++ b/lib/diaspora/federation/mappings.rb @@ -29,6 +29,7 @@ module Diaspora case diaspora_entity when AccountMigration then :account_migration when AccountDeletion then :account_deletion + when Block then :block when Comment then :comment when Contact then :contact when Conversation then :conversation |