Module: MongoMapper::Plugins::Sanitize::InstanceMethods

Defined in:
lib/mm-sanitize.rb

Instance Method Summary collapse

Instance Method Details

#sanitize_attributesObject



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/mm-sanitize.rb', line 44

def sanitize_attributes
  self.class.sanitize_keys.each do |key, options|

    if options[:keep_original]
      self["original_#{key}"] = self[key]
    end

    if val = self[key]
      if val.is_a?(Array) || val.is_a?(Set)
        self[key] = val.collect{|v| ::Sanitize.clean(v, options[:config]) }
      elsif val.is_a?(Hash)
        self[key] = val.each{|k, v| val[k] = ::Sanitize.clean(v, options[:config]) if v.is_a?(String) }
      elsif val.is_a?(String)
        self[key] = ::Sanitize.clean(val, options[:config])
      end
    end
  end
end