Class: Collavre::CommentPresenceStore

Inherits:
Object
  • Object
show all
Defined in:
app/models/collavre/comment_presence_store.rb

Constant Summary collapse

KEY_PREFIX =
"comment_presence:"

Class Method Summary collapse

Class Method Details

.add(creative_id, user_id) ⇒ Object



5
6
7
8
9
10
11
12
# File 'app/models/collavre/comment_presence_store.rb', line 5

def self.add(creative_id, user_id)
  ids = list(creative_id)
  unless ids.include?(user_id)
    ids << user_id
    Rails.cache.write(key(creative_id), ids)
  end
  ids
end

.key(creative_id) ⇒ Object



26
27
28
# File 'app/models/collavre/comment_presence_store.rb', line 26

def self.key(creative_id)
  "#{KEY_PREFIX}#{creative_id}"
end

.list(creative_id) ⇒ Object



22
23
24
# File 'app/models/collavre/comment_presence_store.rb', line 22

def self.list(creative_id)
  Rails.cache.read(key(creative_id)) || []
end

.remove(creative_id, user_id) ⇒ Object



14
15
16
17
18
19
20
# File 'app/models/collavre/comment_presence_store.rb', line 14

def self.remove(creative_id, user_id)
  ids = list(creative_id)
  if ids.delete(user_id)
    Rails.cache.write(key(creative_id), ids)
  end
  ids
end