Module: ModerateParameters::Parameters

Included in:
ActionController::Parameters
Defined in:
lib/moderate_parameters/parameters.rb

Instance Method Summary collapse

Instance Method Details

#moderate(controller_name, action, *filters) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/moderate_parameters/parameters.rb', line 5

def moderate(controller_name, action, *filters)
  params = self.class.new

  filters.each do |filter|
    case filter
    when Symbol, String
      if non_scalar?(self[filter])
        non_scalar_value_filter(params, filter, controller_name, action)
      else
        permitted_scalar_filter(params, filter)
      end
    when Hash
      cust_hash_filter(params, filter, controller_name, action)
    end
  end

  incoming_params_logging(params, controller_name, action)
  dup.permit!
end