Fix #6657 - Use target instead of origin in Remove activity (#6664)

master
Eugen Rochko 7 years ago committed by GitHub
parent 913a38111f
commit e6520c0270
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      app/lib/activitypub/activity/remove.rb
  2. 4
      app/serializers/activitypub/remove_serializer.rb
  3. 2
      spec/lib/activitypub/activity/remove_spec.rb

@ -2,7 +2,7 @@
class ActivityPub::Activity::Remove < ActivityPub::Activity
def perform
return unless @json['origin'].present? && value_or_id(@json['origin']) == @account.featured_collection_url
return unless @json['target'].present? && value_or_id(@json['target']) == @account.featured_collection_url
status = status_from_uri(object_uri)

@ -3,7 +3,7 @@
class ActivityPub::RemoveSerializer < ActiveModel::Serializer
include RoutingHelper
attributes :type, :actor, :origin
attributes :type, :actor, :target
attribute :proper_object, key: :object
def type
@ -18,7 +18,7 @@ class ActivityPub::RemoveSerializer < ActiveModel::Serializer
ActivityPub::TagManager.instance.uri_for(object)
end
def origin
def target
account_collection_url(object, :featured)
end
end

@ -11,7 +11,7 @@ RSpec.describe ActivityPub::Activity::Remove do
type: 'Add',
actor: ActivityPub::TagManager.instance.uri_for(sender),
object: ActivityPub::TagManager.instance.uri_for(status),
origin: sender.featured_collection_url,
target: sender.featured_collection_url,
}.with_indifferent_access
end

Loading…
Cancel
Save