lib/a2z/responses/item.rb in a2z-0.1.0 vs lib/a2z/responses/item.rb in a2z-0.1.1
- old
+ new
@@ -2,17 +2,19 @@
module Responses
class Item
include Helpers
attr_accessor :asin, :parent_asin, :detail_page_url, :links, :image_sets,
- :small_image, :medium_image, :large_image, :editorial_reviews
+ :small_image, :medium_image, :large_image, :editorial_reviews,
+ :offers, :offer_summary
def initialize
@links = []
@attrs = {}
@image_sets = {}
@editorial_reviews = []
+ @offers = []
end
def keys
@attrs.keys
end
@@ -53,11 +55,13 @@
item.small_image = Image.from_response(data['SmallImage']) if data['SmallImage']
item.medium_image = Image.from_response(data['MediumImage']) if data['MediumImage']
item.large_image = Image.from_response(data['LargeImage']) if data['LargeImage']
- if data['ItemLinks']
+ item.offer_summary = OfferSummary.from_response(data['OfferSummary']) if data['OfferSummary']
+
+ if data['ItemLinks'] && data['ItemLinks']['ItemLink']
item_links = array_wrap(data['ItemLinks']['ItemLink'])
item.links = item_links.collect { |link| ItemLink.from_response(link) }
end
if data['ItemAttributes']
@@ -73,9 +77,14 @@
end
if data['EditorialReviews'] && data['EditorialReviews']['EditorialReview']
reviews = array_wrap(data['EditorialReviews']['EditorialReview'])
item.editorial_reviews = reviews.collect { |review| EditorialReview.from_response(review) }
+ end
+
+ if data['Offers'] && data['Offers']['Offer']
+ offers = array_wrap(data['Offers']['Offer'])
+ item.offers = offers.collect { |offer| Offer.from_response(offer) }
end
item.freeze
end
end