DEFAULT_OPTIONS = {
:class_name => nil,
:singular_name => nil,
- :per_page => 10,
+ :per_page => 10,
:conditions => nil,
- :order_by => nil,
- :order => nil,
- :join => nil,
- :joins => nil,
- :count => nil,
- :include => nil,
- :select => nil,
- :group => nil,
- :parameter => "page"
+ :order_by => nil,
+ :order => nil,
+ :join => nil,
+ :joins => nil,
+ :count => nil,
+ :include => nil,
+ :select => nil,
+ :group => nil,
+ :parameter => "page"
}.freeze
end
# same page number).
def ==(other)
return false if other.nil?
+
@paginator == other.paginator &&
@number == other.number
end
# if the pages do not belong to the same Paginator object.
def <=>(other)
raise ArgumentError unless @paginator == other.paginator
+
@number <=> other.number
end
# Sets the window's padding (the number of pages on either side of the
# window page).
def padding=(padding)
- @padding = padding < 0 ? 0 : padding
+ @padding = padding.negative? ? 0 : padding
# Find the beginning and end pages of the window
@first = if @paginator.has_page_number?(@page.number - @padding)
@paginator[@page.number - @padding]