Class: Craigler::Search
- Inherits:
-
Object
- Object
- Craigler::Search
- Includes:
- ERB::Util
- Defined in:
- lib/craigler/search.rb
Instance Attribute Summary collapse
-
#categories ⇒ Object
readonly
Returns the value of attribute categories.
-
#locations ⇒ Object
readonly
Returns the value of attribute locations.
-
#search_term ⇒ Object
readonly
Returns the value of attribute search_term.
Instance Method Summary collapse
-
#initialize(search_term, options = {}) ⇒ Search
constructor
A new instance of Search.
- #results(refresh = false) ⇒ Object
Constructor Details
#initialize(search_term, options = {}) ⇒ Search
Returns a new instance of Search.
9 10 11 12 13 14 15 |
# File 'lib/craigler/search.rb', line 9 def initialize(search_term, = {}) raise InvalidSearchTerm if search_term.nil? || search_term == '' @search_term = search_term @results = nil () end |
Instance Attribute Details
#categories ⇒ Object (readonly)
Returns the value of attribute categories.
7 8 9 |
# File 'lib/craigler/search.rb', line 7 def categories @categories end |
#locations ⇒ Object (readonly)
Returns the value of attribute locations.
7 8 9 |
# File 'lib/craigler/search.rb', line 7 def locations @locations end |
#search_term ⇒ Object (readonly)
Returns the value of attribute search_term.
7 8 9 |
# File 'lib/craigler/search.rb', line 7 def search_term @search_term end |
Instance Method Details
#results(refresh = false) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/craigler/search.rb', line 17 def results(refresh = false) return @results unless @results.nil? || refresh @results = [] _for_each_locations_search_url() do |location, url| (0..19).each do |page| items = _extract_items_from_url(location, "#{url}&s=#{page*25}") @results.push(*items) break unless items.size == 25 end end results end |