Parent

Included Modules

Class/Module Index [+]

Quicksearch

Ramaze::Helper::Paginate::Paginator::ArrayPager

Wrapper for Array to behave like the Sequel pagination

Public Class Methods

new(array, page, limit) click to toggle source
# File lib/ramaze/helper/paginate.rb, line 191
def initialize(array, page, limit)
  @array, @page, @limit = array, page, limit
  @page = page_count if @page > page_count
end

Public Instance Methods

current_page() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 209
def current_page
  @page
end
each(&block) click to toggle source
# File lib/ramaze/helper/paginate.rb, line 229
def each(&block)
  from = ((@page - 1) * @limit)
  to = from + @limit

  a = @array[from...to] || []
  a.each(&block)
end
empty?() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 200
def empty?
  @array.empty?
end
first_page?() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 221
def first_page?
  @page <= 1
end
last_page?() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 225
def last_page?
  page_count == @page
end
next_page() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 213
def next_page
  page_count == @page ? nil : @page + 1
end
page_count() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 204
def page_count
  pages, rest = size.divmod(@limit)
  rest == 0 ? pages : pages + 1
end
prev_page() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 217
def prev_page
  @page <= 1 ? nil : @page - 1
end
size() click to toggle source
# File lib/ramaze/helper/paginate.rb, line 196
def size
  @array.size
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.