retrospring/app/models/comment.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

31 lines
758 B
Ruby
Raw Normal View History

2020-04-19 00:59:18 +02:00
class Comment < ApplicationRecord
belongs_to :user, counter_cache: :commented_count
belongs_to :answer, counter_cache: :comment_count
2014-11-30 19:43:03 +01:00
validates :user_id, presence: true
validates :answer_id, presence: true
has_many :smiles, class_name: "Reaction", foreign_key: :parent_id, dependent: :destroy
2014-12-07 14:29:47 +01:00
validates :content, length: { maximum: 512 }
2014-12-14 15:10:23 +01:00
2014-12-28 21:58:11 +01:00
after_create do
2023-03-05 14:01:56 +01:00
Subscription.subscribe user, answer
2015-04-21 03:12:11 +02:00
Subscription.notify self, answer
2014-12-28 21:58:11 +01:00
end
before_destroy do
2015-04-30 02:22:24 +02:00
rep = Report.where(target_id: self.id, type: 'Reports::Comment')
2015-04-30 02:04:43 +02:00
rep.each do |r|
unless r.nil?
r.deleted = true
r.save
end
end
2015-04-21 03:12:11 +02:00
Subscription.denotify self, answer
2014-12-28 21:58:11 +01:00
end
2014-12-14 15:10:23 +01:00
def notification_type(*_args)
Notification::Commented
2014-12-14 15:10:23 +01:00
end
2014-10-28 06:36:38 +01:00
end