lib/goodwill/auction.rb in goodwill-0.1.4 vs lib/goodwill/auction.rb in goodwill-0.2.0

- old
+ new

@@ -15,23 +15,37 @@ attr_reader :end attr_reader :href attr_reader :item attr_reader :itemid attr_reader :seller + attr_reader :shipping - def initialize(itemid = nil) - @href = ITEM_SEARCH_URL + itemid.to_s + def initialize(itemid, zipcode = '97222', state = 'OR', country = 'United States') @itemid = itemid + @zipcode = zipcode + @state = state + @country = country + + @href = ITEM_SEARCH_URL + itemid.to_s item_page = mechanize.get(@href) @bids = item_page.search(BIDS_PATH).text[/\d+/] @current = item_page.search(CURRENT_PRICE_PATH).text @end = item_page.search(END_TIME_PATH).text @item = item_page.search(ITEM_TITLE_PATH).text @seller = item_page.search(SELLER_PATH).text @bidding = false + @shipping = calculate_shipping(@itemid, @zipcode, @state, @country) end def ==(another_auction) self.itemid == another_auction.itemid + end + + private + + def calculate_shipping(itemid, zipcode, state, country) + params = "?itemid=#{itemid}&zip=#{zipcode}&state=#{state}&country=#{country}" + page = mechanize.get(SHIPPING_URL + params) + page.search(SHIPPING_PATH).text end end end