class ThinkingSphinx::Masks::PaginationMask
Attributes
search[R]
Public Class Methods
new(search)
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 4 def initialize(search) @search = search end
Public Instance Methods
can_handle?(method)
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 8 def can_handle?(method) public_methods(false).include?(method) end
first_page?()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 12 def first_page? search.current_page == 1 end
last_page?()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 16 def last_page? next_page.nil? end
next_page()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 20 def next_page search.current_page >= total_pages ? nil : search.current_page + 1 end
next_page?()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 24 def next_page? !next_page.nil? end
page(number)
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 28 def page(number) search.options[:page] = number search end
per(limit)
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 33 def per(limit) search.options[:limit] = limit search end
previous_page()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 38 def previous_page search.current_page == 1 ? nil : search.current_page - 1 end
Also aliased as: prev_page
total_entries()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 44 def total_entries search.meta['total_found'].to_i end
Also aliased as: total_count, count
total_pages()
click to toggle source
# File lib/thinking_sphinx/masks/pagination_mask.rb, line 51 def total_pages return 0 if search.meta['total'].nil? @total_pages ||= (search.meta['total'].to_i / search.per_page.to_f).ceil end
Also aliased as: page_count, num_pages