Sha256: 2f87fa889cf27a246a649030ce7af0b33ce980f495f70c05b911e173373ebde9

Contents?: true

Size: 873 Bytes

Versions: 2

Compression:

Stored size: 873 Bytes

Contents

require 'redmine_crm/helpers/vote_helper'

module RedmineCrm
  module ActsAsVotable
    class Vote < ActiveRecord::Base
      include Helpers::Words

      if defined?(ProtectedAttributes) || ::ActiveRecord::VERSION::MAJOR < 4
        attr_accessible :votable_id, :votable_type,
                        :voter_id, :voter_type,
                        :votable, :voter,
                        :vote_flag, :vote_scope
      end

      belongs_to :votable, :polymorphic => true
      belongs_to :voter, :polymorphic => true

      scope :up, lambda { where(:vote_flag => true) }
      scope :down, lambda { where(:vote_flag => false) }
      scope :for_type, lambda { |klass| where(:votable_type => klass) }
      scope :by_type,  lambda { |klass| where(:voter_type => klass) }

      validates_presence_of :votable_id
      validates_presence_of :voter_id
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
redmine_crm-0.0.26 lib/redmine_crm/acts_as_votable/vote.rb
redmine_crm-0.0.25 lib/redmine_crm/acts_as_votable/vote.rb