12345678910111213141516171819202122232425262728293031323334353637383940 |
- :ruby
- show_results = (user_signed_in? && poll.voted?(current_account)) || poll.expired?
- own_votes = user_signed_in? ? poll.own_votes(current_account) : []
- total_votes_count = poll.voters_count || poll.votes_count
- .poll
- %ul
- - poll.loaded_options.each_with_index do |option, index|
- %li
- - if show_results
- - percent = total_votes_count.positive? ? 100 * option.votes_count / total_votes_count : 0
- %label.poll__option><
- %span.poll__number><
- #{percent.round}%
- %span.poll__option__text
- = prerender_custom_emojis(h(option.title), status.emojis)
- - if own_votes.include?(index)
- %span.poll__voted
- %i.poll__voted__mark.fa.fa-check
- %progress{ max: 100, value: [percent, 1].max, 'aria-hidden': 'true' }
- %span.poll__chart
- - else
- %label.poll__option><
- %span.poll__input{ class: poll.multiple? ? 'checkbox' : nil }><
- %span.poll__option__text
- = prerender_custom_emojis(h(option.title), status.emojis)
- .poll__footer
- - unless show_results
- %button.button.button-secondary{ disabled: true }
- = t('statuses.poll.vote')
- - if poll.voters_count.nil?
- %span= t('statuses.poll.total_votes', count: poll.votes_count)
- - else
- %span= t('statuses.poll.total_people', count: poll.voters_count)
- - unless poll.expires_at.nil?
- ·
- %span= l poll.expires_at
|