class Drillbit::Authorizers::Parameters::Filtering
Public Instance Methods
call()
click to toggle source
# File lib/drillbit/authorizers/parameters/filtering.rb, line 9 def call params.permit(*authorized_params) end
Private Instance Methods
add_filter_override(name:, value:, only_when_present: false, override_if_admin: false)
click to toggle source
# File lib/drillbit/authorizers/parameters/filtering.rb, line 56 def add_filter_override(name:, value:, only_when_present: false, override_if_admin: false) add_filterable_parameter name return true if !override_if_admin && token.admin? param = params .fetch(:filter, {}) .fetch(name, nil) return if !param && only_when_present params[:filter] ||= {} params[:filter][name] = value end
add_filterable_parameter(name)
click to toggle source
# File lib/drillbit/authorizers/parameters/filtering.rb, line 38 def add_filterable_parameter(name) param = params .fetch(:filter, {}) .fetch(name, nil) if param.class == Array authorized_params[7][:filter][1][name] = [] else authorized_params[7][:filter] << name end end
add_filterable_parameters(*names)
click to toggle source
# File lib/drillbit/authorizers/parameters/filtering.rb, line 50 def add_filterable_parameters(*names) names.each do |name| add_filterable_parameter(name) end end