about summary refs log tree commit diff
path: root/app/serializers/rest/admin
diff options
context:
space:
mode:
authorStarfall <us@starfall.systems>2022-06-24 13:31:43 -0500
committerStarfall <us@starfall.systems>2022-06-24 13:31:43 -0500
commitd83f17f6763a1ffb3569eac73330cb09c557acea (patch)
tree92d392eed60a7d60bbd01e8544202db19a37e3d5 /app/serializers/rest/admin
parentb9c901007b9a5772d2553a5770fa479954eec58f (diff)
parent63f79874b59b3ba28c0f940b9d36ea7aacb44c93 (diff)
Merge remote-tracking branch 'glitch/main'
Diffstat (limited to 'app/serializers/rest/admin')
-rw-r--r--app/serializers/rest/admin/report_serializer.rb3
-rw-r--r--app/serializers/rest/admin/webhook_event_serializer.rb26
2 files changed, 28 insertions, 1 deletions
diff --git a/app/serializers/rest/admin/report_serializer.rb b/app/serializers/rest/admin/report_serializer.rb
index 74bc0c520..237f41d8e 100644
--- a/app/serializers/rest/admin/report_serializer.rb
+++ b/app/serializers/rest/admin/report_serializer.rb
@@ -1,7 +1,8 @@
 # frozen_string_literal: true
 
 class REST::Admin::ReportSerializer < ActiveModel::Serializer
-  attributes :id, :action_taken, :category, :comment, :created_at, :updated_at
+  attributes :id, :action_taken, :action_taken_at, :category, :comment,
+             :created_at, :updated_at
 
   has_one :account, serializer: REST::Admin::AccountSerializer
   has_one :target_account, serializer: REST::Admin::AccountSerializer
diff --git a/app/serializers/rest/admin/webhook_event_serializer.rb b/app/serializers/rest/admin/webhook_event_serializer.rb
new file mode 100644
index 000000000..fe0ac23f9
--- /dev/null
+++ b/app/serializers/rest/admin/webhook_event_serializer.rb
@@ -0,0 +1,26 @@
+# frozen_string_literal: true
+
+class REST::Admin::WebhookEventSerializer < ActiveModel::Serializer
+  def self.serializer_for(model, options)
+    case model.class.name
+    when 'Account'
+      REST::Admin::AccountSerializer
+    when 'Report'
+      REST::Admin::ReportSerializer
+    else
+      super
+    end
+  end
+
+  attributes :event, :created_at
+
+  has_one :virtual_object, key: :object
+
+  def virtual_object
+    object.object
+  end
+
+  def event
+    object.type
+  end
+end