Module: MongoidForums::Concerns::Viewable

Extended by:
ActiveSupport::Concern
Included in:
Forum, Topic
Defined in:
app/models/mongoid_forums/concerns/viewable.rb

Instance Method Summary collapse

Instance Method Details

#register_view_by(user) ⇒ Object

Track when users last viewed topics



46
47
48
49
50
51
52
53
54
55
56
57
# File 'app/models/mongoid_forums/concerns/viewable.rb', line 46

def register_view_by(user)
  return unless user

  view = views.find_or_create_by(:user_id => user.id)
  view.user_id = user.id
  view.inc(count: 1)
  inc(views_count: 1)

  view.past_viewed_at    = view.current_viewed_at
  view.current_viewed_at = Time.now
  view.save
end

#view_for(user) ⇒ Object



41
42
43
# File 'app/models/mongoid_forums/concerns/viewable.rb', line 41

def view_for(user)
  views.where(:user_id => user.id).first
end