Sha256: 07c659b776fae9af603ea4bc390bc6173823a877a4bec34c9a712aa21b7c1c82

Contents?: true

Size: 521 Bytes

Versions: 8

Compression:

Stored size: 521 Bytes

Contents

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

    def self.description
      "Cost per Range"
    end

    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
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
piggybak-0.7.7 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.6 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.5 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.4 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.3 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.2 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.1 app/models/piggybak/shipping_calculator/range.rb
piggybak-0.7.0 app/models/piggybak/shipping_calculator/range.rb