Class: DMM::Response::Item

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-dmm/response/item.rb

Constant Summary collapse

ITEM_KEYS =
[
  :title,
  :service_name,
  :floor_name,
  :category_name,
  :content_id,
  :product_id,
  :url,
  :affiliate_url,
  :affiliate_url_sp,
  :url_sp,
  :jancode,
  :maker_product,
  :stock,
  :bandaiinfo,
  :cdinfo,
  :isbn,
]

Instance Method Summary collapse

Constructor Details

#initialize(item) ⇒ Item

Returns a new instance of Item.



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/ruby-dmm/response/item.rb', line 40

def initialize(item)
  ITEM_KEYS.each do |key|
    instance_variable_set("@#{key}", item[key])
  end
  @date   = Time.parse(item[:date])

  if item[:prices]
    @price        = item[:prices][:price]
    @list_prices  = item[:prices][:list_price]
    @price_all    = item[:prices][:price_all]
    @prices       = item[:prices][:deliveries] && [item[:prices][:deliveries][:delivery]].flatten.inject({}) do |hash, params|
      hash.merge(params[:type] => params[:price].to_i)
    end
  end

  if item[:sample_image_url]
    @small_images = item[:sample_image_url][:sample_s][:image]
    @large_images = @small_images.map {|image| image.gsub(/(-[0-9]+\.jpg)/, 'jp\1') }
  end

  @iteminfo = ItemInfo.new(item[:iteminfo])
end