module Georgia class Message < ActiveRecord::Base include Georgia::Indexer attr_accessible :name, :email, :subject, :message, :attachment, :phone delegate :url, :current_path, :size, :content_type, :filename, to: :attachment validates :name, presence: true validates :email, format: /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i validates :message, presence: true mount_uploader :attachment, Georgia::AttachmentUploader # Anti Spam: check https://github.com/joshfrench/rakismet for more details include Rakismet::Model rakismet_attrs author: :name, author_email: :email, content: :message, comment_type: 'message' attr_accessible :user_ip, :user_agent, :referrer, :spam, :verified_at attr_accessor :permalink, :author_url scope :spam, where(spam: true) scope :ham, where(spam: false) scope :latest, order("created_at DESC") def status @status ||= spam ? 'spam' : 'clean' end end end