houdini/app/models/comment.rb
2019-08-02 19:07:24 +02:00

36 lines
830 B
Ruby

# License: AGPL-3.0-or-later WITH Web-Template-Output-Additional-Permission-3.0-or-later
class Comment < ApplicationRecord
#TODO
# attr_accessible \
# :host_id, :host_type, #parent: Event, Campaign, nil
# :profile_id,
# :body
validates :profile, :presence => true
validates :body, :presence => true, :length => {:maximum => 200}
has_one :activity, :as => :attachment, :dependent => :destroy
belongs_to :host, :polymorphic => true
belongs_to :donation
belongs_to :profile
before_validation(:on => :create) do
remove_newlines
end
after_create do
self.create_activity({
:desc => 'commented',
:profile_id => self.profile_id,
:host_id => self.host_id,
:host_type => self.host_type,
:body => self.body
})
end
def remove_newlines
self.body = self.body && self.body.gsub(/\n/,'')
end
end