module ActiveExtend::ActiveDisablable
Public Class Methods
included(base)
click to toggle source
# File lib/active_extend/active_disablable.rb, line 7 def self.included(base) base.extend(ClassMethods) base.send(:default_scope) { base.where(:enabled => true) } end
Public Instance Methods
destroy()
click to toggle source
Calls superclass method
# File lib/active_extend/active_disablable.rb, line 41 def destroy if (@destroy_fully || self.disabled?) super else disable self.save end end
destroy_fully()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 55 def destroy_fully @destroy_fully = true self.destroy end
disable()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 25 def disable self.enabled = false end
disabled?()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 37 def disabled? !self.enabled end
enable()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 29 def enable self.enabled = true end
enabled?()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 33 def enabled? self.enabled end
recovery()
click to toggle source
# File lib/active_extend/active_disablable.rb, line 50 def recovery enable self.save end