about summary refs log tree commit diff
path: root/app/serializers/rest/admin
diff options
context:
space:
mode:
Diffstat (limited to 'app/serializers/rest/admin')
-rw-r--r--app/serializers/rest/admin/account_serializer.rb8
-rw-r--r--app/serializers/rest/admin/canonical_email_block_serializer.rb9
-rw-r--r--app/serializers/rest/admin/email_domain_block_serializer.rb9
-rw-r--r--app/serializers/rest/admin/ip_block_serializer.rb14
4 files changed, 38 insertions, 2 deletions
diff --git a/app/serializers/rest/admin/account_serializer.rb b/app/serializers/rest/admin/account_serializer.rb
index 3480e8c5a..ad98a53e8 100644
--- a/app/serializers/rest/admin/account_serializer.rb
+++ b/app/serializers/rest/admin/account_serializer.rb
@@ -3,7 +3,7 @@
 class REST::Admin::AccountSerializer < ActiveModel::Serializer
   attributes :id, :username, :domain, :created_at,
              :email, :ip, :role, :confirmed, :suspended,
-             :silenced, :disabled, :approved, :locale,
+             :silenced, :sensitized, :disabled, :approved, :locale,
              :invite_request
 
   attribute :created_by_application_id, if: :created_by_application?
@@ -32,6 +32,10 @@ class REST::Admin::AccountSerializer < ActiveModel::Serializer
     object.silenced?
   end
 
+  def sensitized
+    object.sensitized?
+  end
+
   def confirmed
     object.user_confirmed?
   end
@@ -77,6 +81,6 @@ class REST::Admin::AccountSerializer < ActiveModel::Serializer
   end
 
   def ip
-    ips&.first
+    ips&.first&.ip
   end
 end
diff --git a/app/serializers/rest/admin/canonical_email_block_serializer.rb b/app/serializers/rest/admin/canonical_email_block_serializer.rb
new file mode 100644
index 000000000..fe385940a
--- /dev/null
+++ b/app/serializers/rest/admin/canonical_email_block_serializer.rb
@@ -0,0 +1,9 @@
+# frozen_string_literal: true
+
+class REST::Admin::CanonicalEmailBlockSerializer < ActiveModel::Serializer
+  attributes :id, :canonical_email_hash
+
+  def id
+    object.id.to_s
+  end
+end
diff --git a/app/serializers/rest/admin/email_domain_block_serializer.rb b/app/serializers/rest/admin/email_domain_block_serializer.rb
new file mode 100644
index 000000000..a026ff680
--- /dev/null
+++ b/app/serializers/rest/admin/email_domain_block_serializer.rb
@@ -0,0 +1,9 @@
+# frozen_string_literal: true
+
+class REST::Admin::EmailDomainBlockSerializer < ActiveModel::Serializer
+  attributes :id, :domain, :created_at, :history
+
+  def id
+    object.id.to_s
+  end
+end
diff --git a/app/serializers/rest/admin/ip_block_serializer.rb b/app/serializers/rest/admin/ip_block_serializer.rb
new file mode 100644
index 000000000..6a38f8b56
--- /dev/null
+++ b/app/serializers/rest/admin/ip_block_serializer.rb
@@ -0,0 +1,14 @@
+# frozen_string_literal: true
+
+class REST::Admin::IpBlockSerializer < ActiveModel::Serializer
+  attributes :id, :ip, :severity, :comment,
+             :created_at, :expires_at
+
+  def id
+    object.id.to_s
+  end
+
+  def ip
+    "#{object.ip}/#{object.ip.prefix}"
+  end
+end