Module: StorageUnit::Core
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/storage_unit/core.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #recover!(opts = {}) ⇒ Object
- #recover_dependents ⇒ Object
- #trash! ⇒ Object
- #trash_dependents ⇒ Object
- #trash_hash(value) ⇒ Object
- #trashed? ⇒ Boolean
Instance Method Details
#recover!(opts = {}) ⇒ Object
42 43 44 45 46 47 |
# File 'lib/storage_unit/core.rb', line 42 def recover!(opts = {}) run_callbacks :recover do update_columns trash_hash(nil) recover_dependents end end |
#recover_dependents ⇒ Object
49 50 51 52 53 |
# File 'lib/storage_unit/core.rb', line 49 def recover_dependents Array(storage_unit_opts[:cascade]).each do |x| send(x).with_deleted.update_all trash_hash(nil) end end |
#trash! ⇒ Object
29 30 31 32 33 34 |
# File 'lib/storage_unit/core.rb', line 29 def trash! run_callbacks :trash do update_columns trash_hash(DateTime.now) trash_dependents end end |
#trash_dependents ⇒ Object
36 37 38 39 40 |
# File 'lib/storage_unit/core.rb', line 36 def trash_dependents Array(storage_unit_opts[:cascade]).each do |x| send(x).update_all trash_hash(DateTime.now) end end |
#trash_hash(value) ⇒ Object
55 56 57 |
# File 'lib/storage_unit/core.rb', line 55 def trash_hash(value) {}.tap { |h| h[storage_unit_opts[:column]] = value } end |
#trashed? ⇒ Boolean
25 26 27 |
# File 'lib/storage_unit/core.rb', line 25 def trashed? send(storage_unit_opts[:column]).present? end |