Module: LinkingPaths::Acts::Scribe::ClassMethods
- Defined in:
- lib/scribe.rb
Instance Method Summary collapse
- #include_scribe_instance_methods(&block) ⇒ Object
- #record_activities(actions = []) ⇒ Object
- #record_activity_of(actor, options = {}) ⇒ Object
Instance Method Details
#include_scribe_instance_methods(&block) ⇒ Object
35 36 37 38 39 40 41 42 |
# File 'lib/scribe.rb', line 35 def include_scribe_instance_methods(&block) unless included_modules.include? InstanceMethods yield if block_given? class_inheritable_accessor :activity_options self. ||= {} include InstanceMethods end end |
#record_activities(actions = []) ⇒ Object
31 32 33 |
# File 'lib/scribe.rb', line 31 def record_activities(actions = []) raise "record_activities(#{actions.join ','}) has been deprecated. Use Activity.report(user, #{actions.first}), etc. instead." end |
#record_activity_of(actor, options = {}) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/scribe.rb', line 12 def record_activity_of(actor, = {}) include_scribe_instance_methods { has_many :activities, :as => :item, :dependent => :destroy after_create do |record| unless [:if].kind_of?(Proc) and not [:if].call(record) user = record.send([:actor]) Activity.report(user, :create, record) end end after_destroy do |record| unless [:if].kind_of?(Proc) and not [:if].call(record) user = record.send([:actor]) Activity.report(user, :destroy, record) end end } self..merge! :actor => actor end |