Class: Spree::DataFeeds::Google::RequiredAttributes

Inherits:
Object
  • Object
show all
Includes:
ServiceModule::Base
Defined in:
app/services/spree/data_feeds/google/required_attributes.rb

Instance Method Summary collapse

Methods included from ServiceModule::Base

prepended

Instance Method Details

#call(input) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/services/spree/data_feeds/google/required_attributes.rb', line 7

def call(input)
  information = {}

  return failure(nil, error: 'No image link') if get_image_link(input[:variant], input[:product]).nil?

  information['id'] = input[:variant].id
  information['title'] = format_title(input[:product], input[:variant])
  information['description'] = get_description(input[:product], input[:variant])
  information['link'] = "#{input[:store].url}/#{input[:product].slug}"
  information['image_link'] = get_image_link(input[:variant], input[:product])
  information['price'] = format_price(input[:variant])
  information['availability'] = get_availability(input[:product])
  information['availability_date'] = input[:product].available_on&.xmlschema unless input[:product].available_on.nil?

  success(information: information)
end