Sha256: 206beab52ae32516ca10356f693b6bc97935d43b6427920e8fda624b45a74edd

Contents?: true

Size: 460 Bytes

Versions: 2

Compression:

Stored size: 460 Bytes

Contents

module DependentProtectSecurity
  def self.included(base)
    base.class_inheritable_accessor :dependent_associations
  end
  protected
  def authorized_for_delete?
    self.class.dependent_associations ||= self.class.reflect_on_all_associations.select {|assoc| assoc.options[:dependent] == :protect}
    self.class.dependent_associations.all? {|assoc| self.send(assoc.name).blank?}
  end
end
ActiveRecord::Base.class_eval { include DependentProtectSecurity }

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
brisk-bills-0.8.2 vendor/plugins/active_scaffold/lib/bridges/dependent_protect/lib/dependent_protect_bridge.rb
brisk-bills-0.8.1 vendor/plugins/active_scaffold/lib/bridges/dependent_protect/lib/dependent_protect_bridge.rb