Class: Murlsh::UrlResultSet

Inherits:
Object
  • Object
show all
Defined in:
lib/murlsh/url_result_set.rb

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (UrlResultSet) initialize(conditions, page, per_page)

A new instance of UrlResultSet



5
6
7
8
# File 'lib/murlsh/url_result_set.rb', line 5

def initialize(conditions, page, per_page)
  @conditions, @page, @per_page = conditions, page, per_page
  @order = 'time DESC'
end

Instance Attribute Details

- (Object) conditions (readonly)

Returns the value of attribute conditions



39
40
41
# File 'lib/murlsh/url_result_set.rb', line 39

def conditions
  @conditions
end

- (Object) order (readonly)

Returns the value of attribute order



42
43
44
# File 'lib/murlsh/url_result_set.rb', line 42

def order
  @order
end

- (Object) page (readonly)

Returns the value of attribute page



40
41
42
# File 'lib/murlsh/url_result_set.rb', line 40

def page
  @page
end

- (Object) per_page (readonly)

Returns the value of attribute per_page



41
42
43
# File 'lib/murlsh/url_result_set.rb', line 41

def per_page
  @per_page
end

Instance Method Details

- (Object) next_page



32
33
34
35
36
37
# File 'lib/murlsh/url_result_set.rb', line 32

def next_page
  unless instance_variable_defined? :@next_page
    @next_page = page + 1  if page < total_pages
  end
  @next_page
end

- (Object) offset



18
# File 'lib/murlsh/url_result_set.rb', line 18

def offset; @offset ||= (page - 1) * per_page; end

- (Object) prev_page



25
26
27
28
29
30
# File 'lib/murlsh/url_result_set.rb', line 25

def prev_page
  unless instance_variable_defined? :@prev_page
    @prev_page = page - 1  if (2..total_pages) === page
  end
  @prev_page
end

- (Object) results



20
21
22
23
# File 'lib/murlsh/url_result_set.rb', line 20

def results
  Murlsh::Url.all(:conditions => conditions, :order => order,
    :limit => per_page, :offset => offset)
end

- (Object) total_entries



10
11
12
# File 'lib/murlsh/url_result_set.rb', line 10

def total_entries
  @total_entries ||= Murlsh::Url.count(:conditions => conditions)
end

- (Object) total_pages



14
15
16
# File 'lib/murlsh/url_result_set.rb', line 14

def total_pages
  @total_pages ||= [(total_entries / per_page.to_f).ceil, 1].max
end