Sha256: 16d1f63770dbb38922c39f59dc12ca8e2d8cb6128ccaaa0e875b1bce8bfcb399

Contents?: true

Size: 378 Bytes

Versions: 5

Compression:

Stored size: 378 Bytes

Contents

module Elabs
  class AssociatedAuthorValidator < ActiveModel::Validator
    def validate(record)
      options[:relations].each do |association|
        record.send(association.pluralize).each do |element|
          record.errors[:base] << format(_('This %<model>s is not yours'), model: association) if element.user_id != record.user_id
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
elabs-5.0.0 app/validators/elabs/associated_author_validator.rb
elabs-4.0.0 app/validators/elabs/associated_author_validator.rb
elabs-3.0.0 app/validators/elabs/associated_author_validator.rb
elabs-2.0.0 app/validators/elabs/associated_author_validator.rb
elabs-2.0.0.pre app/validators/elabs/associated_author_validator.rb