module SanitizeModelAttributes::ClassMethods

Public Instance Methods

sanitize_attributes(*args) click to toggle source
# File lib/sanitize_model_attributes.rb, line 23
def sanitize_attributes(*args)
  args.each do |attribute_name|
    self.class_eval do
      define_method "#{attribute_name}=".to_sym do |attribute_value|
        unless attribute_value.frozen?
          attribute_value = Loofah.fragment(attribute_value).scrub!(:strip).text

          SanitizeModelAttributes.configuration.white_character_maps.each do |k, v|
            attribute_value = attribute_value.gsub(/#{k}/, v)
          end
        end

        write_attribute attribute_name.to_sym, attribute_value
      end
    end
  end
end
sanitize_model_attributes(*args) click to toggle source
# File lib/sanitize_model_attributes.rb, line 41
def sanitize_model_attributes(*args)
  sanitize_attributes(*args)
end