Sha256: 7bda1f22633b0e770df2f085e7d4296f7bd935a81cb29cf5de81cbc3f52ca667

Contents?: true

Size: 299 Bytes

Versions: 3

Compression:

Stored size: 299 Bytes

Contents

module GearedPagination
  class Ratios
    DEFAULTS = [ 15, 30, 50, 100 ]

    def initialize(ratios = nil)
      @ratios = Array(ratios || DEFAULTS)
    end

    def [](page_number)
      @ratios[page_number - 1] || @ratios.last
    end

    def cache_key
      @ratios.join('-')
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
geared_pagination-1.0.1 lib/geared_pagination/ratios.rb
geared_pagination-1.0.0 lib/geared_pagination/ratios.rb
geared_pagination-0.2 lib/geared_pagination/ratios.rb