Module: SolidusPromotions::Conditions::OptionValueCondition

Included in:
LineItemOptionValue, OptionValue, OrderOptionValue, PriceOptionValue
Defined in:
app/models/concerns/solidus_promotions/conditions/option_value_condition.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



6
7
8
9
# File 'app/models/concerns/solidus_promotions/conditions/option_value_condition.rb', line 6

def self.included(base)
  base.preference :eligible_values, :hash
  base.remove_method :preferred_eligible_values
end

Instance Method Details

#preferred_eligible_valuesObject



11
12
13
14
15
16
17
18
# File 'app/models/concerns/solidus_promotions/conditions/option_value_condition.rb', line 11

def preferred_eligible_values
  values = preferences[:eligible_values] || {}
  values.keys.map(&:to_i).zip(
    values.values.map do |value|
      (value.is_a?(Array) ? value : value.split(",")).map(&:to_i)
    end
  ).to_h
end