X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/8181cb4bf77548088f959562f24be17f8ec053a3..8f4edc234adb903a5b6ae304c771fd85adb32699:/app/models/diary_comment.rb diff --git a/app/models/diary_comment.rb b/app/models/diary_comment.rb index aaf48be4f..9d29f52b7 100644 --- a/app/models/diary_comment.rb +++ b/app/models/diary_comment.rb @@ -4,4 +4,30 @@ class DiaryComment < ActiveRecord::Base validates_presence_of :body validates_associated :diary_entry + + after_initialize :set_defaults + after_save :spam_check + + def body + RichText.new(read_attribute(:body_format), read_attribute(:body)) + end + + def digest + md5 = Digest::MD5.new + md5 << diary_entry_id.to_s + md5 << user_id.to_s + md5 << created_at.xmlschema + md5 << body + md5.hexdigest + end + +private + + def set_defaults + self.body_format = "markdown" unless self.attribute_present?(:body_format) + end + + def spam_check + user.spam_check + end end