22 lines
460 B
Ruby
22 lines
460 B
Ruby
module DiggableModel
|
|
def self.included(model)
|
|
model.serialize :digg_users
|
|
end
|
|
|
|
def digged_by?(user)
|
|
user.nil? || user == -1 || (user != -1 && (digg_users || []).include?(user.id))
|
|
end
|
|
|
|
def digg_by(user)
|
|
self.digg_users_will_change!
|
|
(self.digg_users ||= []) << user.id
|
|
self.increment!(:digg)
|
|
end
|
|
|
|
def bury_by(user)
|
|
self.digg_users_will_change!
|
|
(self.digg_users ||= []) << user.id
|
|
self.increment!(:bury)
|
|
end
|
|
end
|