Sha256: 45aac4d706c04ce8b6fde83558b65ee7927d230d78957f4170abb0e61cb366f9

Contents?: true

Size: 685 Bytes

Versions: 9

Compression:

Stored size: 685 Bytes

Contents

event :lose_coded_status_on_update, :initialize, on: :update, when: :coded? do
  # unless explicit
  return if @new_mod

  @new_storage_type ||= storage_type_from_config
end

event :validate_coded_storage_type, :validate, on: :save, when: :will_become_coded? do
  storage_type_error :mod_argument_needed_to_save unless mod || @new_mod
  storage_type_error :codename_needed_for_storage if codename.blank?
end

def storage_type_error error_name
  errors.add :storage_type, t("carrierwave_#{error_name}")
end

def will_become_coded?
  will_be_stored_as == :coded
end

def mod= value
  if @action == :update && mod != value
    @new_mod = value.to_s
  else
    @mod = value.to_s
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
card-mod-carrierwave-0.13.4 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.13.3 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.13.2 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.13.1 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.13.0 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.11.7 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.12.0 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.11.6 set/abstract/attachment/coded.rb
card-mod-carrierwave-0.11.5 set/abstract/attachment/coded.rb