0
0
Fork 0

Pinned statuses (#4675)

* Pinned statuses

* yarn manage:translations
This commit is contained in:
Eugen Rochko 2017-08-25 01:41:18 +02:00 committed by GitHub
parent c5157ef07b
commit 9caa90025f
59 changed files with 493 additions and 29 deletions

View file

@ -8,6 +8,7 @@ class REST::StatusSerializer < ActiveModel::Serializer
attribute :favourited, if: :current_user?
attribute :reblogged, if: :current_user?
attribute :muted, if: :current_user?
attribute :pinned, if: :pinnable?
belongs_to :reblog, serializer: REST::StatusSerializer
belongs_to :application
@ -57,6 +58,21 @@ class REST::StatusSerializer < ActiveModel::Serializer
end
end
def pinned
if instance_options && instance_options[:relationships]
instance_options[:relationships].pins_map[object.id] || false
else
current_user.account.pinned?(object)
end
end
def pinnable?
current_user? &&
current_user.account_id == object.account_id &&
!object.reblog? &&
%w(public unlisted).include?(object.visibility)
end
class ApplicationSerializer < ActiveModel::Serializer
attributes :name, :website
end