module ActivityFeed::Item
Public Instance Methods
Specifically aggregate an item in the activity feed for a given user_id
. This is useful if you are going to background the process of populating a user’s activity feed from friend’s activities.
@param user_id [String] User ID. @param item_id [String] Item
ID. @param timestamp [int] Timestamp for the item being added or updated.
# File lib/activity_feed/item.rb, line 28 def aggregate_item(user_id, item_id, timestamp) feederboard = ActivityFeed.feederboard_for(user_id, true) feederboard.rank_member(item_id, timestamp) end
Check to see if an item is in the activity feed for a given user_id
.
@param user_id [String] User ID. @param item_id [String] Item
ID. @param aggregate [boolean, false] Whether or not to check the aggregate activity feed.
# File lib/activity_feed/item.rb, line 51 def check_item?(user_id, item_id, aggregate = ActivityFeed.aggregate) feederboard_individual = ActivityFeed.feederboard_for(user_id, false) feederboard_aggregate = ActivityFeed.feederboard_for(user_id, true) aggregate ? feederboard_aggregate.check_member?(item_id) : feederboard_individual.check_member?(item_id) end
Remove an item from the activity feed for a given user_id
. This will also remove the item from the aggregate activity feed for the user.
@param user_id [String] User ID. @param item_id [String] Item
ID.
# File lib/activity_feed/item.rb, line 39 def remove_item(user_id, item_id) feederboard = ActivityFeed.feederboard_for(user_id, false) feederboard.remove_member(item_id) feederboard = ActivityFeed.feederboard_for(user_id, true) feederboard.remove_member(item_id) end
Add or update an item in the activity feed for a given user_id
.
@param user_id [String] User ID. @param item_id [String] Item
ID. @param timestamp [int] Timestamp for the item being added or updated. @param aggregate [boolean, false] Whether to add or update the item in the aggregate feed for user_id
.
# File lib/activity_feed/item.rb, line 9 def update_item(user_id, item_id, timestamp, aggregate = ActivityFeed.aggregate) feederboard = ActivityFeed.feederboard_for(user_id, false) feederboard.rank_member(item_id, timestamp) if aggregate feederboard = ActivityFeed.feederboard_for(user_id, true) feederboard.rank_member(item_id, timestamp) end end