Class: CustomFields::Types::File::FileUploader

Inherits:
CarrierWave::Uploader::Base
  • Object
show all
Defined in:
lib/custom_fields/types/file.rb

Instance Method Summary collapse

Instance Method Details

#filenameObject



90
91
92
93
94
95
96
97
# File 'lib/custom_fields/types/file.rb', line 90

def filename
  if original_filename && model.fields[mounted_as.to_s].localized?
    _original_filename, extension = original_filename.split('.')
    ["#{_original_filename}_#{::Mongoid::Fields::I18n.locale}", extension].compact.join('.')
  else
    original_filename
  end
end

#set_size_in_modelObject



99
100
101
102
103
104
105
106
107
108
109
# File 'lib/custom_fields/types/file.rb', line 99

def set_size_in_model
  size_field_name = :"#{mounted_as}_size"

  if model.respond_to?(size_field_name)
    is_localized  = model.fields[mounted_as.to_s].options[:localize]
    key           = is_localized ? ::Mongoid::Fields::I18n.locale.to_s : 'default'
    values        = model.send(size_field_name)

    values[key] = file.size
  end
end