Module: RSolr::Pagination

Defined in:
lib/rsolr/pagination.rb

Defined Under Namespace

Modules: Paginator

Class Method Summary collapse

Class Method Details

.extended(solr_response) ⇒ Object



3
4
5
6
7
8
9
# File 'lib/rsolr/pagination.rb', line 3

def self.extended solr_response
  d = solr_response['response']['docs']
  d.extend Paginator
  d.per_page = solr_response['responseHeader']['params']['rows'].to_s.to_i
  d.start = solr_response['response']['start'].to_s.to_i
  d.total = solr_response['response']['numFound'].to_s.to_i
end

.page_and_per_page_to_start_and_rows(page, per_page) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/rsolr/pagination.rb', line 11

def self.page_and_per_page_to_start_and_rows page, per_page
  rows = per_page.to_s.to_i
  page = page.to_s.to_i-1
  page = page < 1 ? 0 : page
  start = page * rows
  [start, rows]
end