Sha256: b406d40df43346b79d54e75c6298bb94a689eeefecc916be8a3294275448f93a

Contents?: true

Size: 469 Bytes

Versions: 51

Compression:

Stored size: 469 Bytes

Contents

module Piggybak
  class ShippingCalculator::Range
    KEYS = ["cost", "upper", "lower"]

    def self.available?(method, object)
      low_end = method.metadata.detect { |m| m.key == "lower" }.value
      high_end = method.metadata.detect { |m| m.key == "upper" }.value

      object.total >= low_end.to_f && object.total <= high_end.to_f
    end

    def self.rate(method, object)
      method.metadata.detect { |m| m.key == "cost" }.value.to_f.to_c
    end
  end
end

Version data entries

51 entries across 51 versions & 1 rubygems

Version Path
piggybak-0.5.5 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.5.4 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.5.3 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.5.2 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.5.1 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.5.0 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.39 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.38 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.37 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.36 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.35 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.34 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.33 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.32 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.31 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.30 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.29 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.28 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.27 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.4.26 app/models/piggybak/shipping_calculator/range.rb