fedibird-fe/app/serializers/rest/poll_serializer.rb
Eugen Rochko 054bbb3da2
Immediately display poll results to poll author (#10187)
* Immediately display poll results to poll author

* Refactor Poll#loaded_options and add Poll#voted? to improve DRYness
2019-03-07 22:53:47 +01:00

30 lines
528 B
Ruby

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