Add non-JS fallback for polls on public pages (#10155)
parent
4ced609497
commit
3de71887d8
@ -0,0 +1,25 @@ |
||||
- options = (!poll.expired? && poll.hide_totals?) ? poll.unloaded_options : poll.loaded_options |
||||
- voted = poll.votes.where(account: current_user.account).exists? |
||||
- show_results = voted || poll.expired? |
||||
|
||||
.poll |
||||
%ul |
||||
- options.each do |option| |
||||
%li |
||||
- if show_results |
||||
- percent = 100 * option.votes_count / poll.votes_count |
||||
%span.poll__chart{ style: "width: #{percent}%" } |
||||
%label.poll__text>< |
||||
%span.poll__number= percent |
||||
= option.title |
||||
- else |
||||
%label.poll__text>< |
||||
%span.poll__input{ class: poll.multiple ? 'checkbox' : nil}>< |
||||
= option.title |
||||
.poll__footer |
||||
- unless show_results |
||||
%button.button.button-secondary{ disabled: true } |
||||
= t('statuses.poll.vote') |
||||
%span= t('statuses.poll.total_votes', count: poll.votes_count) |
||||
· |
||||
%span= poll.expires_at |
Loading…
Reference in new issue