Module: RailsCom::ActionController::Include

Defined in:
lib/rails_com/action_controller/include.rb

Instance Method Summary collapse

Instance Method Details

#valid_ivarsObject


19
20
21
22
23
24
# File 'lib/rails_com/action_controller/include.rb', line 19

def valid_ivars
  _except = _protected_ivars.to_a + [
    :@marked_for_same_origin_verification
  ]
  self.instance_variables - _except
end

#whether_filter(filter) ⇒ Object


4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/rails_com/action_controller/include.rb', line 4

def whether_filter(filter)
  callback = self.__callbacks[:process_action].find { |i| i.filter == filter.to_sym }
  return false unless callback

  _if = callback.instance_variable_get(:@if).map do |c|
    c.call(self)
  end

  _unless = callback.instance_variable_get(:@unless).map do |c|
    !c.call(self)
  end

  !(_if + _unless).uniq.include?(false)
end