module Uploadcare::Rails::ActionView::FormBuilder

Public Instance Methods

uploadcare_field(method, options = {}) click to toggle source

smart method to detect wich of - file or group - pesent and then choose either multiple or single-file upload. not that this method WILL override custom settings in order to prevent method collisions

# File lib/uploadcare/rails/action_view/uploader_tags.rb, line 62
def uploadcare_field(method, options = {})
  if @object.try("has_#{ method }_as_uploadcare_file?".to_sym) &&
      !@object.try("has_#{ method }_as_uploadcare_group?".to_sym)
    uploadcare_single_uploader_field(method, options)
  elsif !@object.try("has_#{ method }_as_uploadcare_file?".to_sym) &&
      @object.try("has_#{ method }_as_uploadcare_group?".to_sym)
    uploadcare_multiple_uploader_field(method, options)
  else
    uploadcare_uploader(method, options)
  end
end
uploadcare_multiple_uploader_field(method, options = {}) click to toggle source

forse-set the data-multiple=“true” for uploader

# File lib/uploadcare/rails/action_view/uploader_tags.rb, line 52
def uploadcare_multiple_uploader_field(method, options = {})
  options[:uploadcare] ||= {}
  options[:uploadcare][:multiple] = true
  uploadcare_uploader(method, options)
end
uploadcare_single_uploader_field(method, options = {}) click to toggle source

forse-set the data-multiple=“false” for uploader

# File lib/uploadcare/rails/action_view/uploader_tags.rb, line 45
def uploadcare_single_uploader_field(method, options = {})
  options[:uploadcare] ||= {}
  options[:uploadcare][:multiple] = false
  uploadcare_uploader(method, options)
end
uploadcare_uploader(method, options = {}) click to toggle source

call uploadcare_uploader field for form object none of options will be overriden and given as-is

# File lib/uploadcare/rails/action_view/uploader_tags.rb, line 37
def uploadcare_uploader(method, options = {})
  @template.
    uploadcare_uploader_field(
      @object_name, method, objectify_options(options)
    )
end