Module: ActsAsDigestedOn::ClassMethods

Defined in:
lib/acts_as_digested_on.rb

Instance Method Summary collapse

Instance Method Details

#acts_as_digested_on(attr_names, options = {}) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/acts_as_digested_on.rb', line 49

def acts_as_digested_on(attr_names, options = {})
  options = options.symbolize_keys

  attr_names = Array(attr_names).flatten
  digest_column = options.delete(:digest_column) || 'digest'
  unique = options.key?(:unique) ? options.delete(:unique) : true

  class_attribute :acts_as_digested_on_vars
  self.acts_as_digested_on_vars = {
    :attr_names => attr_names,
    :digest_column => digest_column,
    :unique => unique,
    :validates_uniqueness_of_options => options
  }

  include InstanceMethods
  include Callbacks
  include Validations if self.acts_as_digested_on_vars[:unique]
end