about summary refs log tree commit diff
path: root/app/serializers/activitypub/remove_serializer.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2018-03-04 09:19:11 +0100
committerGitHub <noreply@github.com>2018-03-04 09:19:11 +0100
commit9110db41c53a2f3f22affc23b364362133997d3e (patch)
tree16c5c7428bdd04831e85b09f6c0bc3e50258b7e3 /app/serializers/activitypub/remove_serializer.rb
parent45feb439bd22c0999b8531879461e8d18fabe8a5 (diff)
Federate pinned statuses over ActivityPub (#6610)
* Federate pinned statuses over ActivityPub

* Display pinned toots in web UI

Fix #6117

* Fix migration

* Fix tests

* Update outbox_serializer.rb

* Update remove_serializer.rb

* Update add_serializer.rb

* Update fetch_featured_collection_service.rb
Diffstat (limited to 'app/serializers/activitypub/remove_serializer.rb')
-rw-r--r--app/serializers/activitypub/remove_serializer.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/app/serializers/activitypub/remove_serializer.rb b/app/serializers/activitypub/remove_serializer.rb
new file mode 100644
index 000000000..6da7e35d3
--- /dev/null
+++ b/app/serializers/activitypub/remove_serializer.rb
@@ -0,0 +1,24 @@
+# frozen_string_literal: true
+
+class ActivityPub::RemoveSerializer < ActiveModel::Serializer
+  include RoutingHelper
+
+  attributes :type, :actor, :origin
+  attribute :proper_object, key: :object
+
+  def type
+    'Remove'
+  end
+
+  def actor
+    ActivityPub::TagManager.instance.uri_for(object.account)
+  end
+
+  def proper_object
+    ActivityPub::TagManager.instance.uri_for(object)
+  end
+
+  def origin
+    account_collection_url(object, :featured)
+  end
+end