Module: StreamRails::Activity

Defined in:
lib/stream_rails/activity.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



35
36
37
# File 'lib/stream_rails/activity.rb', line 35

def self.included base
  base.extend ClassMethods
end

Instance Method Details

#activity_actorObject



43
44
45
# File 'lib/stream_rails/activity.rb', line 43

def activity_actor
  self.user
end

#activity_actor_idObject



51
52
53
# File 'lib/stream_rails/activity.rb', line 51

def activity_actor_id
  StreamRails.create_reference(self.activity_actor)
end

#activity_extra_dataObject



70
71
72
# File 'lib/stream_rails/activity.rb', line 70

def activity_extra_data
  {}
end

#activity_foreign_idObject



63
64
65
# File 'lib/stream_rails/activity.rb', line 63

def activity_foreign_id
  StreamRails.create_reference(self)
end

#activity_notifyObject



67
68
# File 'lib/stream_rails/activity.rb', line 67

def activity_notify
end

#activity_object_idObject



59
60
61
# File 'lib/stream_rails/activity.rb', line 59

def activity_object_id
  StreamRails.create_reference(self)
end

#activity_owner_feedObject



47
48
49
# File 'lib/stream_rails/activity.rb', line 47

def activity_owner_feed
  'user'
end

#activity_owner_idObject



39
40
41
# File 'lib/stream_rails/activity.rb', line 39

def activity_owner_id
  self.user_id
end

#activity_timeObject



74
75
76
# File 'lib/stream_rails/activity.rb', line 74

def activity_time
  self.created_at.iso8601
end

#activity_verbObject



55
56
57
# File 'lib/stream_rails/activity.rb', line 55

def activity_verb
  self.class.model_name.to_s
end

#create_activityObject



78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/stream_rails/activity.rb', line 78

def create_activity
  activity = {
    :actor => self.activity_actor_id,
    :verb => self.activity_verb,
    :object => self.activity_object_id,
    :foreign_id => self.activity_foreign_id,
    :time => self.activity_time,
  }
  if !self.activity_notify.nil?
    activity[:to] = self.activity_notify.map{|f| f.id}
  end
  activity.merge(self.activity_extra_data)
end