Class: Ticketmaster::Search

Inherits:
Result
  • Object
show all
Defined in:
lib/ticketmaster/results/search.rb

Instance Attribute Summary collapse

Attributes inherited from Result

#data, #request

Instance Method Summary collapse

Methods inherited from Result

array, create, #initialize, search

Constructor Details

This class inherits a constructor from Ticketmaster::Result

Instance Attribute Details

#typeObject

Returns the value of attribute type.



3
4
5
# File 'lib/ticketmaster/results/search.rb', line 3

def type
  @type
end

Instance Method Details

#current_pageObject



13
14
15
# File 'lib/ticketmaster/results/search.rb', line 13

def current_page
  data['page']['number']
end

#next_pageObject



21
22
23
# File 'lib/ticketmaster/results/search.rb', line 21

def next_page
  current_page + 1 if current_page < total_pages
end

#next_resultObject



29
30
31
32
33
34
# File 'lib/ticketmaster/results/search.rb', line 29

def next_result
  if next_page
    params = request.params.merge(page: next_page)
    result = request.client.send "search_#{type}".to_sym, params: params
  end
end

#previous_pageObject



25
26
27
# File 'lib/ticketmaster/results/search.rb', line 25

def previous_page
  current_page - 1 if current_page > 0
end

#previous_resultObject



36
37
38
39
40
41
# File 'lib/ticketmaster/results/search.rb', line 36

def previous_result
  if previous_page
    params = request.params.merge(page: previous_page)
    result = request.client.send "search_#{type}".to_sym, params: params
  end
end

#reloadObject



43
44
45
# File 'lib/ticketmaster/results/search.rb', line 43

def reload
  data = request.get
end

#resultsObject



5
6
7
8
9
10
11
# File 'lib/ticketmaster/results/search.rb', line 5

def results
  return [] if data['_embedded'].nil?
  
  data['_embedded'][type].map do |event|
    Result.create(event, request, "Ticketmaster::#{type.capitalize.chop}")
  end
end

#total_pagesObject



17
18
19
# File 'lib/ticketmaster/results/search.rb', line 17

def total_pages
  data['page']['totalPages']
end