diff --git a/app/serializers/activitypub/activity_serializer.rb b/app/serializers/activitypub/activity_serializer.rb index b252e008b..df399211c 100644 --- a/app/serializers/activitypub/activity_serializer.rb +++ b/app/serializers/activitypub/activity_serializer.rb @@ -3,10 +3,11 @@ class ActivityPub::ActivitySerializer < ActiveModel::Serializer attributes :id, :type, :actor, :published, :to, :cc - has_one :proper, key: :object, serializer: ActivityPub::NoteSerializer + has_one :proper, key: :object, serializer: ActivityPub::NoteSerializer, unless: :announce? + attribute :proper_uri, key: :object, if: :announce? def id - [ActivityPub::TagManager.instance.activity_uri_for(object)].join + ActivityPub::TagManager.instance.activity_uri_for(object) end def type @@ -29,6 +30,10 @@ class ActivityPub::ActivitySerializer < ActiveModel::Serializer ActivityPub::TagManager.instance.cc(object) end + def proper_uri + ActivityPub::TagManager.instance.uri_for(object.proper) + end + def announce? object.reblog? end