module FlexInfiniteScroll::ActiveRecordHelpers

Public Instance Methods

next_page() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 21
def next_page
  page == total_pages ? nil : page + 1
end
page() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 17
def page
  (values[:offset] / per_page) + 1
end
per_page() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 13
def per_page
  values[:limit]
end
render_html() { |el| ... } click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 9
def render_html
  prepare_render.merge(data: map { |el| yield el }.join.html_safe)
end
render_json() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 5
def render_json
  prepare_render.merge(data: as_json)
end
total_pages() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 25
def total_pages
  (except(:offset, :limit, :order).count / per_page).ceil
end

Private Instance Methods

prepare_render() click to toggle source
# File lib/flex_infinite_scroll/activerecord/helpers.rb, line 31
def prepare_render
  {
    next_page: next_page,
    total_pages: total_pages
  }
end