Sha256: 825572c38d652f66c2a6a3044242dc7c362139e550fde83993463f452224e25a

Contents?: true

Size: 625 Bytes

Versions: 78

Compression:

Stored size: 625 Bytes

Contents

class AssetBoxLengthValidator < ActiveModel::EachValidator
  def validate_each(record, attribute, value)
    num_in_box = (record.attachments || []).select { |attachment| attachment.box == attribute.to_s.pluralize && attachment.marked_for_destruction? == false }.size

    if options[:with]
      record.errors[attribute] << "requires at least #{options[:with]} #{attribute.to_s.pluralize}" if num_in_box < options[:with]
    elsif options[:in]
      record.errors[attribute] << "requires #{options[:in].min} to #{options[:in].max} #{attribute.to_s.pluralize}" if options[:in].include?(num_in_box) == false
    end
  end
end

Version data entries

78 entries across 78 versions & 1 rubygems

Version Path
effective_assets-1.12.2 lib/validators/asset_box_length_validator.rb
effective_assets-1.12.1 lib/validators/asset_box_length_validator.rb
effective_assets-1.12.0 lib/validators/asset_box_length_validator.rb
effective_assets-1.11.5 lib/validators/asset_box_length_validator.rb
effective_assets-1.11.4 lib/validators/asset_box_length_validator.rb
effective_assets-1.11.3 lib/validators/asset_box_length_validator.rb
effective_assets-1.11.2 app/models/validators/asset_box_length_validator.rb
effective_assets-1.11.1 app/models/validators/asset_box_length_validator.rb
effective_assets-1.11.0 app/models/validators/asset_box_length_validator.rb
effective_assets-1.10.1 app/models/validators/asset_box_length_validator.rb
effective_assets-1.10.0 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.14 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.13 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.12 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.11 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.10 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.9 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.8 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.7 app/models/validators/asset_box_length_validator.rb
effective_assets-1.9.6 app/models/validators/asset_box_length_validator.rb