Module: Spree::UserMethods

Extended by:
ActiveSupport::Concern
Includes:
RansackableAttributes, UserApiAuthentication, UserPaymentSource, UserReporting
Included in:
LegacyUser
Defined in:
app/models/concerns/spree/user_methods.rb

Instance Method Summary collapse

Methods included from UserReporting

#average_order_value, #lifetime_value, #order_count

Methods included from DisplayMoney

#money_methods

Methods included from UserApiAuthentication

#clear_spree_api_key!, #generate_spree_api_key!

Instance Method Details

#analytics_idObject



39
40
41
# File 'app/models/concerns/spree/user_methods.rb', line 39

def analytics_id
  id
end

#has_spree_role?(role_in_question) ⇒ Boolean

has_spree_role? simply needs to return true or false whether a user has a role or not.

Returns:

  • (Boolean)


28
29
30
# File 'app/models/concerns/spree/user_methods.rb', line 28

def has_spree_role?(role_in_question)
  spree_roles.any? { |role| role.name == role_in_question.to_s }
end

#last_incomplete_spree_orderObject



32
33
34
35
36
37
# File 'app/models/concerns/spree/user_methods.rb', line 32

def last_incomplete_spree_order
  orders.incomplete.
    includes(line_items: [variant: [:images, :option_values, :product]]).
    order('created_at DESC').
    first
end

#total_available_store_creditObject



43
44
45
# File 'app/models/concerns/spree/user_methods.rb', line 43

def total_available_store_credit
  store_credits.reload.to_a.sum(&:amount_remaining)
end