class Netfira::WebConnect::RackApp::Action::Version8::Files

Public Instance Methods

call() click to toggle source
# File lib/netfira/web_connect/rack_app/actions/version_8/files.rb, line 4
def call
  allow :post
  klass = class_for_record_type(path[0])
  raise BadRequest, "You can't upload files for that data type" unless klass < Netfira::WebConnect::Model::Record::FileRecord

  file_name = path[1]
  raise BadRequest, 'You must specify a file name' unless file_name.length > 0

  file = klass.find_or_initialize_by_origin_id(shop, file_name)
  file << input
  file.file_name = file_name

  file.save or raise InternalServerError, file.errors
  {}
end