diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index ee0af5f60..4077113dc 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -2,11 +2,11 @@ class UsersController < ApplicationController before_filter :authenticate_user! def index - search_and_load_members current_organization.members.active + search_and_load_members current_organization.members.active, {s: 'member_uid asc'} end def manage - search_and_load_members current_organization.members + search_and_load_members current_organization.members, {s: 'member_uid asc'} end def show @@ -57,8 +57,8 @@ def update private - def search_and_load_members(members_scope) - @search = members_scope.ransack(search_params) + def search_and_load_members(members_scope, default_search_params) + @search = members_scope.ransack(default_search_params.merge(params.fetch(:q, {}))) @members = @search.result.eager_load(:account, :user).page(params[:page]).per(20) @@ -67,10 +67,6 @@ def search_and_load_members(members_scope) @members.map { |m| MemberDecorator.new(m, self.class.helpers) } end - def search_params - {s: 'member_uid asc'}.merge(params.fetch(:q, {})) - end - def scoped_users current_organization.users end diff --git a/app/views/users/_member_card.html.erb b/app/views/users/_member_card.html.erb index c6ed0c62c..0b61420b3 100644 --- a/app/views/users/_member_card.html.erb +++ b/app/views/users/_member_card.html.erb @@ -16,17 +16,21 @@
- <%= member.description %> + <%= member.description&.truncate(124) %>
-
- - <%= phone_to member.phone %> -
-
- - <%= member.mail_to %> -
+ <% if member.phone.present? && !member.phone.blank? %> +
+ + <%= phone_to member.phone %> +
+ <% end %> + <% if member.mail_to.present? && !member.mail_to.blank? %> +
+ + <%= member.mail_to %> +
+ <% end %>
<%= "Balance: " %> <%= member.account_balance %> diff --git a/app/views/users/_user_row.html.erb b/app/views/users/_user_row.html.erb index 29af9c8d2..1e5233cf1 100644 --- a/app/views/users/_user_row.html.erb +++ b/app/views/users/_user_row.html.erb @@ -5,11 +5,11 @@ <%= member.inactive_icon %> <%= member.link_to_self %> - <%= member.mail_to %> - <%= phone_to member.phone %> - <%= member.account_balance %> + <%= member.mail_to %> + <%= phone_to member.phone %> + <%= member.account_balance %> <% if current_user.manages?(current_organization) %> - + <% if member.active? %> <%= render 'toggle_manager_link', member: member if can_toggle_manager?(member) %> <% else %> diff --git a/app/views/users/manage.html.erb b/app/views/users/manage.html.erb index a02f58d4f..6f37ae995 100644 --- a/app/views/users/manage.html.erb +++ b/app/views/users/manage.html.erb @@ -50,17 +50,17 @@ <%= sort_link @search, :user_username, User.human_attribute_name(:username) %> - + <%= User.human_attribute_name(:email) %> - + <%= User.human_attribute_name(:phone) %> - + <%= sort_link @search, 'account_balance', Account.human_attribute_name(:balance) %> <% if current_user.manages? current_organization %> - + <%= t(".actions") %> diff --git a/spec/fabricators/user_fabricator.rb b/spec/fabricators/user_fabricator.rb index 99ee3605a..5d0b196da 100644 --- a/spec/fabricators/user_fabricator.rb +++ b/spec/fabricators/user_fabricator.rb @@ -10,6 +10,7 @@ address { Faker::Address.street_address + " " + Faker::Address.zip_code + " " + Faker::Address.city + " (" + Faker::Address.state + ")"} gender { ["male", "female"].shuffle.first } description { Faker::Lorem.paragraph } + last_sign_in_at { DateTime.new(2018, 10, 1) } terms_accepted_at DateTime.now.utc confirmed_at DateTime.now.utc