about summary refs log tree commit diff
path: root/app/serializers/rest
diff options
context:
space:
mode:
authorDavid Yip <yipdw@member.fsf.org>2017-12-06 15:40:59 -0600
committerDavid Yip <yipdw@member.fsf.org>2017-12-06 15:40:59 -0600
commitf1cbea77a4a52929244198dcbde26d63d837489a (patch)
tree82645dbc9eec65f870ce7a211355deb6bdc29f29 /app/serializers/rest
parent21e28a5caa5e92165322c4127c89a6f88e68198a (diff)
parent8ca91cef45417947607079118b1af07c9774ae58 (diff)
Merge remote-tracking branch 'personal/merge/tootsuite/master' into gs-master
Diffstat (limited to 'app/serializers/rest')
-rw-r--r--app/serializers/rest/relationship_serializer.rb20
1 files changed, 15 insertions, 5 deletions
diff --git a/app/serializers/rest/relationship_serializer.rb b/app/serializers/rest/relationship_serializer.rb
index 998727e37..45bfd4d6e 100644
--- a/app/serializers/rest/relationship_serializer.rb
+++ b/app/serializers/rest/relationship_serializer.rb
@@ -1,15 +1,21 @@
 # frozen_string_literal: true
 
 class REST::RelationshipSerializer < ActiveModel::Serializer
-  attributes :id, :following, :followed_by, :blocking,
-             :muting, :requested, :domain_blocking
+  attributes :id, :following, :showing_reblogs, :followed_by, :blocking,
+             :muting, :muting_notifications, :requested, :domain_blocking
 
   def id
     object.id.to_s
   end
 
   def following
-    instance_options[:relationships].following[object.id] || false
+    instance_options[:relationships].following[object.id] ? true : false
+  end
+
+  def showing_reblogs
+    (instance_options[:relationships].following[object.id] || {})[:reblogs] ||
+      (instance_options[:relationships].requested[object.id] || {})[:reblogs] ||
+      false
   end
 
   def followed_by
@@ -21,11 +27,15 @@ class REST::RelationshipSerializer < ActiveModel::Serializer
   end
 
   def muting
-    instance_options[:relationships].muting[object.id] || false
+    instance_options[:relationships].muting[object.id] ? true : false
+  end
+
+  def muting_notifications
+    (instance_options[:relationships].muting[object.id] || {})[:notifications] || false
   end
 
   def requested
-    instance_options[:relationships].requested[object.id] || false
+    instance_options[:relationships].requested[object.id] ? true : false
   end
 
   def domain_blocking