separates answerable questions and moves callout to a partial

This commit is contained in:
Alberto Garcia Cabeza
2016-12-26 17:22:40 +01:00
parent d231a0188c
commit ba9ed83a3a
4 changed files with 62 additions and 44 deletions

View File

@@ -0,0 +1,22 @@
<% unless can?(:answer, @poll) %>
<% if current_user.nil? %>
<div class="callout primary">
<%= t("polls.show.cant_answer_not_logged_in",
signin: link_to(t("polls.show.signin"), new_user_session_path, class: "probe-message"),
signup: link_to(t("polls.show.signup"), new_user_registration_path, class: "probe-message")).html_safe %>
</div>
<% elsif current_user.unverified? %>
<div class="callout warning">
<%= t('polls.show.cant_answer_verify_html',
verify_link: link_to(t('polls.show.verify_link'), verification_path)) %>
</div>
<% elsif @poll.incoming? %>
<div class="callout primary">
<%= t('polls.show.cant_answer_incoming') %>
</div>
<% elsif @poll.expired? %>
<div class="callout alert">
<%= t('polls.show.cant_answer_expired') %>
</div>
<% end %>
<% end %>

View File

@@ -3,60 +3,52 @@
<div class="expanded no-margin-top dark-heading poll-show">
<div class="row">
<div class="small-12 medium-6 column padding">
<div class="small-12 medium-9 column padding">
<%= render "shared/back_link" %>
<h2><%= @poll.name %></h2>
</div>
<div class="small-12 medium-4 column padding info">
<p class="title">
<strong><%= t("polls.show.dates_title") %></strong>
</p>
<p>
<strong><%= poll_dates(@poll) %></strong>
<%= t("polls.show.question_count_html",
count: @poll.questions.count) %>
</p>
<%= render "callout" %>
</div>
<div class="small-12 medium-3 column">
<div class="info">
<p>
<span class="title">
<strong><%= t("polls.show.dates_title") %></strong>
</span>
<br>
<%= poll_dates(@poll) %>
</p>
</div>
</div>
</div>
</div>
<div class="row margin-top">
<div class="small-12 column">
<% unless can?(:answer, @poll) %>
<% if current_user.nil? %>
<div class="callout primary">
<%= t("polls.show.cant_answer_not_logged_in",
signin: link_to(t("polls.show.signin"), new_user_session_path, class: "probe-message"),
signup: link_to(t("polls.show.signup"), new_user_registration_path, class: "probe-message")).html_safe %>
</div>
<% elsif current_user.unverified? %>
<div class="callout warning">
<%= t('polls.show.cant_answer_verify_html',
verify_link: link_to(t('polls.show.verify_link'), verification_path)) %>
</div>
<% elsif @poll.incoming? %>
<div class="callout primary">
<%= t('polls.show.cant_answer_incoming') %>
</div>
<% elsif @poll.expired? %>
<div class="callout alert">
<%= t('polls.show.cant_answer_expired') %>
</div>
<% end %>
<% end %>
<div class="small-12 medium-9 column">
<% @answerable_questions.each do |question| %>
<%= render 'polls/questions/question', question: question %>
<% end %>
<% if can?(:answer, @poll) &&
@non_answerable_questions.present? %>
<div class="callout warning">
<%= t('polls.show.cant_answer_wrong_geozone') %>
</div>
<% end %>
<% @non_answerable_questions.each do |question| %>
<%= render 'polls/questions/question', question: question %>
<% end %>
</div>
</div>
<% if can?(:answer, @poll) && @non_answerable_questions.present? %>
<div class="row margin-top">
<div class="small-12 medium-9 column">
<div class="callout warning">
<h2 class="questions-callout">
<%= t("polls.show.cant_answer_wrong_geozone",
count: @non_answerable_questions.count) %>
</h2>
</div>
<% @non_answerable_questions.each do |question| %>
<%= render 'polls/questions/question', question: question %>
<% end %>
</div>
</div>
<% end %>