Sha256: 39a2cfc49326646fbeca64ae7b18e902af52c65d9221bc50ddf0b13bbc98b32e

Contents?: true

Size: 594 Bytes

Versions: 30

Compression:

Stored size: 594 Bytes

Contents

# See the Pagy documentation: https://ddnexus.github.io/pagy/extras/array

class Pagy
  # Add specialized backend methods to paginate array collections
  module Backend ; private

    # Return Pagy object and items
    def pagy_array(array, vars={})
      pagy = Pagy.new(pagy_array_get_vars(array, vars))
      return pagy, array[pagy.offset, pagy.items]
    end

    def pagy_array_get_vars(array, vars)
      # Return the merged variables to initialize the Pagy object
      { count: array.count,
        page:  params[vars[:page_param]||VARS[:page_param]] }.merge!(vars)
    end

  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
pagy-1.2.0 lib/pagy/extras/array.rb
pagy-1.1.0 lib/pagy/extras/array.rb
pagy-1.0.0 lib/pagy/extras/array.rb
pagy-0.23.1 lib/pagy/extras/array.rb
pagy-0.23.0 lib/pagy/extras/array.rb
pagy-0.22.0 lib/pagy/extras/array.rb
pagy-0.21.0 lib/pagy/extras/array.rb
pagy-0.20.0 lib/pagy/extras/array.rb
pagy-0.19.4 lib/pagy/extras/array.rb
pagy-0.19.3 lib/pagy/extras/array.rb
pagy-0.19.2 lib/pagy/extras/array.rb
pagy-0.19.1 lib/pagy/extras/array.rb
pagy-0.19.0 lib/pagy/extras/array.rb
pagy-0.18.0 lib/pagy/extras/array.rb
pagy-0.17.0 lib/pagy/extras/array.rb
pagy-0.16.0 lib/pagy/extras/array.rb
pagy-0.15.1 lib/pagy/extras/array.rb
pagy-0.15.0 lib/pagy/extras/array.rb
pagy-0.14.0 lib/pagy/extras/array.rb
pagy-0.13.1 lib/pagy/extras/array.rb