metamaps--metamaps/app/models/permitted_params.rb
2018-01-21 14:21:00 -08:00

38 lines
776 B
Ruby

# frozen_string_literal: true
class PermittedParams
%w[map synapse topic mapping token].each do |kind|
define_method(kind) do
permitted_attributes = send("#{kind}_attributes")
@params.require(kind).permit(*permitted_attributes)
end
alias_method :"api_#{kind}", kind.to_sym
end
def initialize(params)
@params = params
end
alias read_attribute_for_serialization send
def token_attributes
[:description]
end
def map_attributes
%i[name desc permission arranged]
end
def synapse_attributes
%i[desc category weight permission topic1_id topic2_id]
end
def topic_attributes
%i[name desc link permission metacode_id]
end
def mapping_attributes
%i[xloc yloc map_id mappable_type mappable_id]
end
end