Module: SolidusSupport

Defined in:
lib/solidus_support.rb,
lib/solidus_support/version.rb,
lib/solidus_support/migration.rb,
lib/solidus_support/engine_extensions.rb

Defined Under Namespace

Modules: EngineExtensions, Migration

Constant Summary collapse

VERSION =
'0.8.1'

Class Method Summary collapse

Class Method Details

.api_available?Boolean

Returns:

  • (Boolean)


67
68
69
# File 'lib/solidus_support.rb', line 67

def api_available?
  defined?(Spree::Api::Engine)
end

.backend_available?Boolean

Returns:

  • (Boolean)


63
64
65
# File 'lib/solidus_support.rb', line 63

def backend_available?
  defined?(Spree::Backend::Engine)
end

.combined_first_and_last_name_in_address?Boolean

Returns:

  • (Boolean)


24
25
26
27
28
29
30
31
32
# File 'lib/solidus_support.rb', line 24

def combined_first_and_last_name_in_address?
  versions_before_preference = Gem::Requirement.new('< 2.11.0')
  versions_after_preference = Gem::Requirement.new('>= 3.0.0.alpha')

  return false if versions_before_preference.satisfied_by?(Spree.solidus_gem_version)
  return true if versions_after_preference.satisfied_by?(Spree.solidus_gem_version)

  Spree::Config.use_combined_first_and_last_name_in_address
end

.frontend_available?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'lib/solidus_support.rb', line 59

def frontend_available?
  defined?(Spree::Frontend::Engine)
end

.new_gateway_code?Boolean

Returns:

  • (Boolean)


34
35
36
37
# File 'lib/solidus_support.rb', line 34

def new_gateway_code?
  first_version_with_new_gateway_code = Gem::Requirement.new('>= 2.3')
  first_version_with_new_gateway_code.satisfied_by?(Spree.solidus_gem_version)
end

.payment_method_parent_class(credit_card: false) ⇒ Object



47
48
49
50
51
52
53
54
55
56
57
# File 'lib/solidus_support.rb', line 47

def payment_method_parent_class(credit_card: false)
  if new_gateway_code?
    if credit_card
      Spree::PaymentMethod::CreditCard
    else
      Spree::PaymentMethod
    end
  else
    Spree::Gateway
  end
end

.payment_source_parent_classObject



39
40
41
42
43
44
45
# File 'lib/solidus_support.rb', line 39

def payment_source_parent_class
  if new_gateway_code?
    Spree::PaymentSource
  else
    Spree::Base
  end
end

.reset_spree_preferences_deprecated?Boolean

Returns:

  • (Boolean)


19
20
21
22
# File 'lib/solidus_support.rb', line 19

def reset_spree_preferences_deprecated?
  first_version_without_reset = Gem::Requirement.new('>= 2.9')
  first_version_without_reset.satisfied_by?(Spree.solidus_gem_version)
end

.solidus_gem_versionObject



10
11
12
13
14
15
16
17
# File 'lib/solidus_support.rb', line 10

def solidus_gem_version
  ActiveSupport::Deprecation.warn "    SolidusSupport.solidus_gem_version is deprecated and will be removed\n    in solidus_support 1.0. Please use Spree.solidus_gem_version instead.\n  WARN\n\n  Spree.solidus_gem_version\nend\n".squish, caller