Module MuckActivity::InstanceMethods
In: lib/muck_activities.rb

Methods

Public Instance methods

add_activity adds an activity to all activites feeds that belong to the objects found in feed_to.

  • feed_to: an array of objects that have has_activities declared on them. The generated activity will be pushed into the feed of each of these objects.
  • source: the object that peformed the activity ie a user or group
  • item: an object that will be used to generated the entry in an activity feed
  • template: name of an partial that will be used to generated the entry in the activity feed. Place templates in /app/views/activity_templates
  • title: optional title that can be used in the template
  • content: option content that can be used in the template. Useful for activities that might not have
     an item but instead might have a message or other text.
    
  • check_method: method that will be called on each item in the feed_to array. If the method evaluates to false the activity won‘t be added to the object‘s activity feed. An example usage would be letting users configure which items they want to have in their activity feed.

[Source]

    # File lib/muck_activities.rb, line 47
47:     def add_activity(feed_to, source, item, template, title = '', content = '', check_method = nil)
48:       feed_to = [feed_to] unless feed_to.is_a?(Array)
49:       activity = Activity.create(:item => item, :source => source, :template => template, :title => title, :content => content)
50:       feed_to.each do |ft|
51:         if check_method
52:           ft.activities << activity if ft.send(check_method)
53:         else
54:           ft.activities << activity
55:         end
56:       end
57:     end

[Source]

    # File lib/muck_activities.rb, line 65
65:     def can_view?(check_object)
66:       self == check_object
67:     end

status returns the first activity item from the user‘s activity feed that is a status update. Used for displaying the last status update the user made

[Source]

    # File lib/muck_activities.rb, line 61
61:     def status
62:       self.activities.find(:first, :conditions => ['is_status_update = true'], :order => 'created_at DESC')
63:     end

[Validate]