major refactoring of post sets and pagination, incomplete

This commit is contained in:
albert
2011-06-03 19:47:16 -04:00
parent ce0695c606
commit ca3e9bb6db
21 changed files with 475 additions and 204 deletions

View File

@@ -0,0 +1,35 @@
module PostSets
module Numbered
attr_reader :page
def initialize(params)
super
@page = options[:page] ? options[:page].to_i : 1
end
def total_pages
@total_pages ||= (count / limit.to_f).ceil.to_i
end
def reload
super
@total_pages = nil
end
def slice(relation)
relation.offset(offset).all
end
def pagination_options
{:offset => offset}
end
def is_first_page?
offset == 0
end
def offset
((page < 1) ? 0 : (page - 1)) * limit
end
end
end