module Checkability::ActsAsCheckable
Adding class and instance methods
Attributes
ch_allowed[RW]
ch_conf[RW]
ch_messages[RW]
Public Class Methods
included(base)
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 7 def self.included(base) base.extend ClassMethods end
new(params)
click to toggle source
Calls superclass method
# File lib/checkability/acts_as_checkable.rb, line 28 def initialize(params) @ch_messages = [] @ch_allowed = nil super(params) end
Public Instance Methods
acts_as_checkable(options = {})
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 14 def acts_as_checkable(options = {}) if !options.is_a?(Hash) && !options.empty? raise ArgumentError, "Hash expected, got #{options.class.name}" end class_attribute :ch_conf self.ch_conf = options end
perform_check()
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 34 def perform_check @ch_conf = ch_conf Checkability::Checkable.new(self).check ch_messages << "#{ch_allowed}:::'#{_value}' is #{_allowness}. " end
Private Instance Methods
_allowness()
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 50 def _allowness ch_allowed ? 'ALLOWED' : 'NOT allowed' end
_attr_name()
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 46 def _attr_name ch_conf[:attr_name] || :value end
_value()
click to toggle source
# File lib/checkability/acts_as_checkable.rb, line 42 def _value send(_attr_name) end