Method: Gemgento::ImageImport#create_image

Defined in:
app/models/gemgento/image_import.rb

#create_image(file_name, types, position, label) ⇒ Void

Create an image for the product.

Parameters:

  • file_name (String)
  • types (Array(String))
  • position (Integer)
  • label (String)

Returns:

  • (Void)


119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# File 'app/models/gemgento/image_import.rb', line 119

def create_image(file_name, types, position, label)
  asset = Asset.new
  asset.product = self.product
  asset.store = store
  asset.position = position
  asset.label = label
  asset.set_file(File.open(file_name))

  types.each do |type|
    asset.asset_types << type
  end

  asset.sync_needed = false
  asset.save

  asset.sync_needed = true

  unless asset.save
    self.process_errors << "Row #{current_row}: #{asset.errors[:base]}"
  end
end