Module: NormalizeLineEndings

Extended by:
ActiveSupport::Concern
Defined in:
lib/normalize_line_endings.rb,
lib/normalize_line_endings/version.rb

Constant Summary collapse

VERSION =
"0.0.9"

Instance Method Summary collapse

Instance Method Details

#attrs_for_normalized_line_endingsObject



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/normalize_line_endings.rb', line 26

def attrs_for_normalized_line_endings
  options = self.class.normalize_line_endings_options

  return attributes if options.blank?

  if options[:except]
    except = Array(options[:except]).flatten.map(&:to_s)

    attributes.stringify_keys.except(*except)
  elsif options[:only]
    only = Array(options[:only]).flatten.map(&:to_s)

    attributes.stringify_keys.slice(*only)
  end
end

#normalize_line_endingsObject



20
21
22
23
24
# File 'lib/normalize_line_endings.rb', line 20

def normalize_line_endings
  attrs_for_normalized_line_endings.each do |attr, value|
    send(:"#{attr}=", value.gsub("\r\n", "\n")) if value.respond_to?(:gsub)
  end
end