diff --git a/Gemfile.lock b/Gemfile.lock index a5419be7a..fdfe79413 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -236,7 +236,7 @@ GEM railties (>= 3.2) loofah (2.0.3) nokogiri (>= 1.5.9) - mail (2.6.6.rc1) + mail (2.6.6) mime-types (>= 1.16, < 4) mime-types (3.1) mime-types-data (~> 3.2015) @@ -555,4 +555,4 @@ DEPENDENCIES whenever BUNDLED WITH - 1.15.0 + 1.15.1 diff --git a/app/assets/javascripts/social_share.js.coffee b/app/assets/javascripts/social_share.js.coffee index a61f2d8f4..823488fe8 100644 --- a/app/assets/javascripts/social_share.js.coffee +++ b/app/assets/javascripts/social_share.js.coffee @@ -4,4 +4,4 @@ App.SocialShare = $(".social-share-button a").each -> element = $(this) site = element.data('site') - element.append("#{site}") \ No newline at end of file + element.append("#{site}") \ No newline at end of file diff --git a/app/assets/stylesheets/layout.scss b/app/assets/stylesheets/layout.scss index 77de0628c..bf62319c4 100644 --- a/app/assets/stylesheets/layout.scss +++ b/app/assets/stylesheets/layout.scss @@ -183,17 +183,6 @@ a { } } -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; -} - .menu.simple { border-bottom: 1px solid $border; margin: $line-height 0; diff --git a/app/controllers/admin/stats_controller.rb b/app/controllers/admin/stats_controller.rb index 9989da796..5a50d03b4 100644 --- a/app/controllers/admin/stats_controller.rb +++ b/app/controllers/admin/stats_controller.rb @@ -13,11 +13,11 @@ class Admin::StatsController < Admin::BaseController @comment_votes = Vote.where(votable_type: 'Comment').count @votes = Vote.count - @user_level_two = User.with_hidden.level_two_verified.count - @user_level_three = User.with_hidden.level_three_verified.count - @verified_users = User.with_hidden.level_two_or_three_verified.count - @unverified_users = User.with_hidden.unverified.count - @users = User.with_hidden.count + @user_level_two = User.active.level_two_verified.count + @user_level_three = User.active.level_three_verified.count + @verified_users = User.active.level_two_or_three_verified.count + @unverified_users = User.active.unverified.count + @users = User.active.count @user_ids_who_voted_proposals = ActsAsVotable::Vote.where(votable_type: 'Proposal').distinct.count(:voter_id) @user_ids_who_didnt_vote_proposals = @verified_users - @user_ids_who_voted_proposals @spending_proposals = SpendingProposal.count diff --git a/app/helpers/layouts_helper.rb b/app/helpers/layouts_helper.rb index 40c8b0b98..b6da582b5 100644 --- a/app/helpers/layouts_helper.rb +++ b/app/helpers/layouts_helper.rb @@ -2,7 +2,7 @@ module LayoutsHelper def layout_menu_link_to(text, path, is_active, options) if is_active - content_tag(:span, t('shared.you_are_in'), class: 'sr-only') + ' ' + + content_tag(:span, t('shared.you_are_in'), class: 'show-for-sr') + ' ' + link_to(text, path, options.merge(class: "active")) else link_to(text, path, options) diff --git a/app/models/user.rb b/app/models/user.rb index ec62a1d5f..95b915b02 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -3,7 +3,8 @@ class User < ActiveRecord::Base include Verification devise :database_authenticatable, :registerable, :confirmable, :recoverable, :rememberable, - :trackable, :validatable, :omniauthable, :async, :password_expirable, :secure_validatable + :trackable, :validatable, :omniauthable, :async, :password_expirable, :secure_validatable, + authentication_keys: [:login] acts_as_voter acts_as_paranoid column: :hidden_at @@ -50,6 +51,7 @@ class User < ActiveRecord::Base attr_accessor :skip_password_validation attr_accessor :use_redeemable_code + attr_accessor :login scope :administrators, -> { joins(:administrators) } scope :moderators, -> { joins(:moderator) } @@ -301,6 +303,14 @@ class User < ActiveRecord::Base public_activity? ? comments : User.none end + # overwritting of Devise method to allow login using email OR username + def self.find_for_database_authentication(warden_conditions) + conditions = warden_conditions.dup + login = conditions.delete(:login) + where(conditions.to_hash).where(["lower(email) = ?", login.downcase]).first || + where(conditions.to_hash).where(["username = ?", login]).first + end + private def clean_document_number diff --git a/app/views/budgets/ballot/_investment_for_sidebar.html.erb b/app/views/budgets/ballot/_investment_for_sidebar.html.erb index 5dc288aaa..b7b1d1242 100644 --- a/app/views/budgets/ballot/_investment_for_sidebar.html.erb +++ b/app/views/budgets/ballot/_investment_for_sidebar.html.erb @@ -9,7 +9,7 @@ class: "remove-investment-project", method: :delete, remote: true do %> - <%= t('budgets.ballots.show.remove') %> + <%= t('budgets.ballots.show.remove') %> <% end %> <% end %> diff --git a/app/views/budgets/results/_results_table.html.erb b/app/views/budgets/results/_results_table.html.erb index 9024899b6..9c40a1d22 100644 --- a/app/views/budgets/results/_results_table.html.erb +++ b/app/views/budgets/results/_results_table.html.erb @@ -40,13 +40,13 @@ <% if investment.winner? %> - + <%= t("budgets.results.accepted") %> <% else %> - + <%= t("budgets.results.discarded") %> diff --git a/app/views/comments/_comment.html.erb b/app/views/comments/_comment.html.erb index 969995ee0..c22e7aa19 100644 --- a/app/views/comments/_comment.html.erb +++ b/app/views/comments/_comment.html.erb @@ -73,8 +73,8 @@ <% if comment.children.size > 0 %> <%= link_to "#{dom_id(comment)}", class: "js-toggle-children relative", data: {'id': "#{dom_id(comment)}"} do %> - - <%= t("shared.hide") %> + + <%= t("shared.hide") %> <%= t("comments.comment.responses", count: comment.children.size) %> <% end %> <% else %> diff --git a/app/views/comments/_votes.html.erb b/app/views/comments/_votes.html.erb index 93af5b2dd..5b97d2242 100644 --- a/app/views/comments/_votes.html.erb +++ b/app/views/comments/_votes.html.erb @@ -8,13 +8,13 @@ <%= link_to vote_comment_path(comment, value: 'yes'), method: "post", remote: true, title: t('votes.agree') do %> - <%= t('votes.agree') %> + <%= t('votes.agree') %> <% end %> <% else %> <%= link_to new_user_session_path do %> - <%= t('votes.agree') %> + <%= t('votes.agree') %> <% end %> <% end %> @@ -26,12 +26,12 @@ <%= link_to vote_comment_path(comment, value: 'no'), method: "post", remote: true, title: t('votes.disagree') do %> - <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <% end %> <% else %> - <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <% end %> <%= comment.total_dislikes %> @@ -48,13 +48,13 @@ <%= link_to vote_comment_path(comment, value: 'yes'), method: "post", remote: true, title: t('votes.agree') do %> - <%= t('votes.agree') %> + <%= t('votes.agree') %> <% end %> <% else %> <%= link_to new_user_session_path do %> - <%= t('votes.agree') %> + <%= t('votes.agree') %> <% end %> <% end %> @@ -66,13 +66,13 @@ <%= link_to vote_comment_path(comment, value: 'no'), method: "post", remote: true, title: t('votes.disagree') do %> - <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <% end %> <% else %> <%= link_to new_user_session_path do %> - <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <% end %> <% end %> diff --git a/app/views/debates/_votes.html.erb b/app/views/debates/_votes.html.erb index 9bc3ca555..9430d4a22 100644 --- a/app/views/debates/_votes.html.erb +++ b/app/views/debates/_votes.html.erb @@ -5,14 +5,14 @@ <%= link_to vote_debate_path(debate, value: 'yes'), class: "like #{voted_classes[:in_favor]}", title: t('votes.agree'), method: "post", remote: true do %> - <%= t('votes.agree') %> + <%= t('votes.agree') %> <%= votes_percentage('likes', debate) %> <% end %> <% else %> @@ -25,14 +25,14 @@ <% if user_signed_in? %> <%= link_to vote_debate_path(debate, value: 'no'), class: "unlike #{voted_classes[:against]}", title: t('votes.disagree'), method: "post", remote: true do %> - <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <%= votes_percentage('dislikes', debate) %> <% end %> <% else %>
- <%= t('votes.disagree') %> + <%= t('votes.disagree') %> <%= votes_percentage('dislikes', debate) %>
diff --git a/app/views/debates/index.html.erb b/app/views/debates/index.html.erb index 73cafe392..b6356ffb2 100644 --- a/app/views/debates/index.html.erb +++ b/app/views/debates/index.html.erb @@ -9,7 +9,7 @@ <% end %>
-

<%= t("shared.outline.debates") %>

+

<%= t("shared.outline.debates") %>

<% if @search_terms || @advanced_search_terms || @tag_filter %>
diff --git a/app/views/devise/menu/_login_items.html.erb b/app/views/devise/menu/_login_items.html.erb index 5d493131d..ea2c6a44c 100644 --- a/app/views/devise/menu/_login_items.html.erb +++ b/app/views/devise/menu/_login_items.html.erb @@ -1,7 +1,7 @@ <% if user_signed_in? %>
  • <%= link_to notifications_path, rel: "nofollow", class: "notifications" do %> - <%= t("layouts.header.notifications") %> + <%= t("layouts.header.notifications") %> <% if current_user.notifications_count > 0 %>
  • <%= link_to "https://twitter.com/#{setting['twitter_handle']}", target: "_blank", title: t("shared.go_to_page") + t("social.twitter", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.twitter", org: setting['org_name']) %> + <%= t("social.twitter", org: setting['org_name']) %> <% end %>
  • @@ -59,7 +59,7 @@
  • <%= link_to "https://www.facebook.com/#{setting['facebook_handle']}/", target: "_blank", title: t("shared.go_to_page") + t("social.facebook", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.facebook", org: setting['org_name']) %> + <%= t("social.facebook", org: setting['org_name']) %> <% end %>
  • @@ -68,7 +68,7 @@
  • <%= link_to setting['blog_url'], target: "_blank", title: t("shared.go_to_page") + t("social.blog", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.blog", org: setting['org_name']) %> + <%= t("social.blog", org: setting['org_name']) %> <% end %>
  • @@ -77,7 +77,7 @@
  • <%= link_to "https://www.youtube.com/#{setting['youtube_handle']}", target: "_blank", title: t("shared.go_to_page") + t("social.youtube", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.youtube", org: setting['org_name']) %> + <%= t("social.youtube", org: setting['org_name']) %> <% end %>
  • @@ -86,7 +86,7 @@
  • <%= link_to "https://www.telegram.me/#{setting['telegram_handle']}", target: "_blank", title: t("shared.go_to_page") + t("social.telegram", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.telegram", org: setting['org_name']) %> + <%= t("social.telegram", org: setting['org_name']) %> <% end %>
  • @@ -95,7 +95,7 @@
  • <%= link_to "https://www.instagram.com/#{setting['instagram_handle']}", target: "_blank", title: t("shared.go_to_page") + t("social.instagram", org: setting['org_name']) + t('shared.target_blank_html') do %> - <%= t("social.instagram", org: setting['org_name']) %> + <%= t("social.instagram", org: setting['org_name']) %> <% end %>
  • diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index d410140e5..f88a4f136 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -26,7 +26,7 @@ <%= setting['per_page_code_body'].try(:html_safe) %> -

    <%= setting['org_name'] %>

    +

    <%= setting['org_name'] %>

    <%= render 'layouts/header' %> diff --git a/app/views/legislation/shared/_share_buttons.html.erb b/app/views/legislation/shared/_share_buttons.html.erb index 0486b9d2d..971402628 100644 --- a/app/views/legislation/shared/_share_buttons.html.erb +++ b/app/views/legislation/shared/_share_buttons.html.erb @@ -3,7 +3,7 @@ <% if browser.device.mobile? %> - <%= t("social.whatsapp") %> + <%= t("social.whatsapp") %> <% end %>
    diff --git a/app/views/pages/accessibility.html.erb b/app/views/pages/accessibility.html.erb index cd9af91a0..87ef99ffe 100644 --- a/app/views/pages/accessibility.html.erb +++ b/app/views/pages/accessibility.html.erb @@ -23,7 +23,7 @@
    - + @@ -63,7 +63,7 @@
    Atajos de teclado para el menú de navegaciónAtajos de teclado para el menú de navegación
    Tecla
    - + diff --git a/app/views/polls/_poll_group.html.erb b/app/views/polls/_poll_group.html.erb index f4dcc5423..6e0b85f16 100644 --- a/app/views/polls/_poll_group.html.erb +++ b/app/views/polls/_poll_group.html.erb @@ -4,7 +4,7 @@ <%= link_to poll, class: "icon-poll-answer can-answer", title: t("polls.index.can_answer") do %> - + <%= t("polls.index.can_answer") %> <% end %> @@ -12,7 +12,7 @@ <%= 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 %> @@ -20,17 +20,17 @@ <%= link_to verification_path, class: "icon-poll-answer unverified", title: t("polls.index.cant_answer_verify") do %> - + <%= t("polls.index.cant_answer_verify") %> <% end %> <% elsif !poll.votable_by?(current_user) %>
    "> - <%= t("polls.index.already_answer") %> + <%= t("polls.index.already_answer") %>
    <% else %>
    "> - <%= t("polls.index.cant_answer") %> + <%= t("polls.index.cant_answer") %>
    <% end %>
    diff --git a/app/views/proposals/index.html.erb b/app/views/proposals/index.html.erb index 77a551fc6..e1c04c607 100644 --- a/app/views/proposals/index.html.erb +++ b/app/views/proposals/index.html.erb @@ -9,7 +9,7 @@ <% end %>
    -

    <%= t("shared.outline.proposals") %>

    +

    <%= t("shared.outline.proposals") %>

    <% if @search_terms || @advanced_search_terms || @tag_filter || params[:retired].present? %>
    diff --git a/app/views/sandbox/admin_legislation_index.html.erb b/app/views/sandbox/admin_legislation_index.html.erb index f4365116c..48bf0f950 100644 --- a/app/views/sandbox/admin_legislation_index.html.erb +++ b/app/views/sandbox/admin_legislation_index.html.erb @@ -9,7 +9,7 @@
    diff --git a/app/views/shared/_filter_subnav.html.erb b/app/views/shared/_filter_subnav.html.erb index 80767f4a7..7364015e2 100644 --- a/app/views/shared/_filter_subnav.html.erb +++ b/app/views/shared/_filter_subnav.html.erb @@ -1,5 +1,5 @@
    Combinación de teclas dependiendo del sistema operativo y navegadorCombinación de teclas dependiendo del sistema operativo y navegador
    Navegador