This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
mastodon/app/serializers/rest/poll_serializer.rb

37 lines
712 B
Ruby
Raw Permalink Normal View History

# frozen_string_literal: true
class REST::PollSerializer < ActiveModel::Serializer
attributes :id, :expires_at, :expired,
:multiple, :votes_count, :voters_count
has_many :loaded_options, key: :options
has_many :emojis, serializer: REST::CustomEmojiSerializer
attribute :voted, if: :current_user?
attribute :own_votes, if: :current_user?
def id
object.id.to_s
end
def expired
object.expired?
end
def voted
object.voted?(current_user.account)
end
def own_votes
object.own_votes(current_user.account)
end
def current_user?
!current_user.nil?
end
class OptionSerializer < ActiveModel::Serializer
attributes :title, :votes_count
end
end