Module: Spree::Admin::UsersHelper

Defined in:
app/helpers/spree/admin/users_helper.rb

Instance Method Summary collapse

Instance Method Details

#customer_full_name(user) ⇒ Object



24
25
26
# File 'app/helpers/spree/admin/users_helper.rb', line 24

def customer_full_name(user)
  user.name&.full
end

#customer_location(user) ⇒ Object



4
5
6
7
8
9
10
# File 'app/helpers/spree/admin/users_helper.rb', line 4

def customer_location(user)
  address = user.billing_address || user.shipping_address || user.addresses.first

  return if address.nil?

  "#{address.city}, #{address&.state_name_text || address&.country&.to_s}"
end

#customer_location_flag(user) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
# File 'app/helpers/spree/admin/users_helper.rb', line 12

def customer_location_flag(user)
  address = user.billing_address || user.shipping_address || user.addresses.first

  return if address.nil?

  country = address.country

  return if country.nil?

  ::Country.new(country.iso).emoji_flag
end

#user_roles_json_arrayObject



32
33
34
# File 'app/helpers/spree/admin/users_helper.rb', line 32

def user_roles_json_array
  @user_roles_json_array ||= Spree::Role.pluck(:id, :name).map { |id, name| { id: id, name: name } }.as_json
end

#users_for_select_optionsObject



28
29
30
# File 'app/helpers/spree/admin/users_helper.rb', line 28

def users_for_select_options
  @users_for_select_options ||= Spree.user_class.accessible_by(current_ability).pluck(:id, :email).map { |id, email| { id: id, name: email } }.as_json
end