Class: Kaminari::Helpers::Paginator::PageProxy

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/kaminari/helpers/paginator.rb

Overview

Wraps a “page number” and provides some utility methods

Instance Method Summary collapse

Constructor Details

#initialize(options, page, last) ⇒ PageProxy

:nodoc:



99
100
101
# File 'lib/kaminari/helpers/paginator.rb', line 99

def initialize(options, page, last) #:nodoc:
  @options, @page, @last = options, page, last
end

Instance Method Details

#+(other) ⇒ Object



161
162
163
# File 'lib/kaminari/helpers/paginator.rb', line 161

def +(other)
  to_i + other.to_i
end

#-(other) ⇒ Object



165
166
167
# File 'lib/kaminari/helpers/paginator.rb', line 165

def -(other)
  to_i - other.to_i
end

#<=>(other) ⇒ Object



169
170
171
# File 'lib/kaminari/helpers/paginator.rb', line 169

def <=>(other)
  to_i <=> other.to_i
end

#current?Boolean

current page or not

Returns:

  • (Boolean)


109
110
111
# File 'lib/kaminari/helpers/paginator.rb', line 109

def current?
  @page == @options[:current_page]
end

#first?Boolean

the first page or not

Returns:

  • (Boolean)


114
115
116
# File 'lib/kaminari/helpers/paginator.rb', line 114

def first?
  @page == 1
end

#inside_window?Boolean

inside the inner window or not

Returns:

  • (Boolean)


144
145
146
# File 'lib/kaminari/helpers/paginator.rb', line 144

def inside_window?
  (@options[:current_page] - @page).abs <= @options[:window]
end

#last?Boolean

the last page or not

Returns:

  • (Boolean)


119
120
121
# File 'lib/kaminari/helpers/paginator.rb', line 119

def last?
  @page == @options[:total_pages]
end

#left_outer?Boolean

within the left outer window or not

Returns:

  • (Boolean)


134
135
136
# File 'lib/kaminari/helpers/paginator.rb', line 134

def left_outer?
  @page <= @options[:left]
end

#next?Boolean

the next page or not

Returns:

  • (Boolean)


129
130
131
# File 'lib/kaminari/helpers/paginator.rb', line 129

def next?
  @page == @options[:current_page] + 1
end

#numberObject

the page number



104
105
106
# File 'lib/kaminari/helpers/paginator.rb', line 104

def number
  @page
end

#prev?Boolean

the previous page or not

Returns:

  • (Boolean)


124
125
126
# File 'lib/kaminari/helpers/paginator.rb', line 124

def prev?
  @page == @options[:current_page] - 1
end

#right_outer?Boolean

within the right outer window or not

Returns:

  • (Boolean)


139
140
141
# File 'lib/kaminari/helpers/paginator.rb', line 139

def right_outer?
  @options[:total_pages] - @page < @options[:right]
end

#to_iObject



153
154
155
# File 'lib/kaminari/helpers/paginator.rb', line 153

def to_i
  number
end

#to_sObject



157
158
159
# File 'lib/kaminari/helpers/paginator.rb', line 157

def to_s
  number.to_s
end

#was_truncated?Boolean

The last rendered tag was “truncated” or not

Returns:

  • (Boolean)


149
150
151
# File 'lib/kaminari/helpers/paginator.rb', line 149

def was_truncated?
  @last.is_a? Gap
end