diff --git a/app/assets/stylesheets/participation.scss b/app/assets/stylesheets/participation.scss index 8c1529531..e849afc81 100644 --- a/app/assets/stylesheets/participation.scss +++ b/app/assets/stylesheets/participation.scss @@ -1368,6 +1368,63 @@ ul.ballot-list { .poll { padding: $line-height; + position: relative; + + .icon-poll-answer { + border-top: 0; + border-bottom: 60px solid transparent; + height: 0; + position: absolute; + right: 0; + top: 0; + width: 0; + + &.can-answer:after, + &.cant-answer:after, + &.not-logged-in:after, + &.unverified:after { + font-family: "icons" !important; + left: 34px; + position: absolute; + top: 5px; + } + + &.can-answer { + border-right: 60px solid $success-bg; + + &:after { + color: $color-success; + content: "\59"; + } + } + + &.cant-answer { + border-right: 60px solid $warning-bg; + + &:after { + color: $color-warning; + content: "\76"; + } + } + + &.not-logged-in { + border-right: 60px solid $info-bg; + + &:after { + color: $color-info; + content: "\6f"; + } + } + + &.unverified { + border-right: 60px solid $warning-bg; + + &:after { + color: $color-warning; + content: "\6f"; + } + } + } .dates { color: $text-medium; @@ -1375,6 +1432,7 @@ ul.ballot-list { @include breakpoint(medium) { float: right; + margin-right: $line-height; } } diff --git a/app/views/polls/_poll_group.html.erb b/app/views/polls/_poll_group.html.erb index d9ffb1d33..8784de066 100644 --- a/app/views/polls/_poll_group.html.erb +++ b/app/views/polls/_poll_group.html.erb @@ -1,5 +1,30 @@ <% poll_group.each do |poll| %>
+ <% if poll.answerable_by?(current_user) && poll.votable_by?(current_user) %> +
"> + <%= t("polls.index.can_answer") %> +
+ <% elsif current_user.nil? %> + <%= link_to new_user_session_path, + class: "icon-poll-answer not-logged-in", + title: t("polls.index.cant_answer_not_logged_in") do %> + + <%= t("polls.index.cant_answer_not_logged_in") %> + + <% end %> + <% elsif current_user.unverified? %> + <%= link_to verification_path, + class: "icon-poll-answer unverified", + title: t("polls.index.cant_answer_verify") do %> + + <%= t("polls.index.cant_answer_verify") %> + + <% end %> + <% else %> +
"> + <%= t("polls.index.cant_answer") %> +
+ <% end %>
<%= poll_dates(poll) %>
@@ -16,9 +41,9 @@ <% end %> <% if poll.geozones.any? %> - +

<%= t("polls.index.geozone_info") %> - +

<% end %>
    <% poll.geozones.each do |g| %> diff --git a/config/locales/en.yml b/config/locales/en.yml index dd1d12976..78be150cd 100755 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -406,6 +406,10 @@ en: no_geozone_restricted: "All city" geozone_restricted: "Districts" geozone_info: "Only can participate people in the Census of: " + can_answer: "You can participate in this poll!" + cant_answer: "This poll is not available on your geozone" + cant_answer_not_logged_in: "You must sign in or sign up to participate" + cant_answer_verify: "You must verify your account in order to answer" show: dates_title: "Participation dates" cant_answer_not_logged_in: "You must %{signin} or %{signup} to participate." diff --git a/config/locales/es.yml b/config/locales/es.yml index 0ced2f9c8..273bfa93d 100755 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -406,6 +406,10 @@ es: no_geozone_restricted: "Toda la ciudad" geozone_restricted: "Distritos" geozone_info: "Solo pueden participar las personas empadronadas en: " + can_answer: "¡Puedes participar en esta votación!" + cant_answer: "Esta votación no está disponible en tu zona" + cant_answer_not_logged_in: "Necesitas iniciar sesión o registrarte para participar" + cant_answer_verify: "Por favor verifica tu cuenta para poder responder" show: dates_title: "Fechas de participación" cant_answer_not_logged_in: "Necesitas %{signin} o %{signup} para participar."