module Mail::CommonMethodsForField

Private Instance Methods

b_value_encode(string) click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 12
def b_value_encode(string)
  string.split(' ').map do |s|
    if s =~ /\e/
      encode64(s)
    else
      s
    end
  end.join(" ")
end
do_decode_with_iso_2022_jp_encoding() click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 4
def do_decode_with_iso_2022_jp_encoding
  if charset.to_s.downcase == 'iso-2022-jp'
    value
  else
    do_decode_without_iso_2022_jp_encoding
  end
end
encode(value) click to toggle source
Calls superclass method
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 22
def encode(value)
  if charset.to_s.downcase == 'iso-2022-jp'
    value
  else
    super(value)
  end
end
encode64(string) click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 30
def encode64(string)
  if string.length > 0
    "=?ISO-2022-JP?B?#{Base64.encode64(string).gsub("\n", "")}?="
  else
    string
  end
end
preprocess(value) click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 38
def preprocess(value)
  value = value.to_s.gsub(/#{WAVE_DASH}/, FULLWIDTH_TILDE)
  value = value.to_s.gsub(/#{MINUS_SIGN}/, FULLWIDTH_HYPHEN_MINUS)
  value = value.to_s.gsub(/#{EM_DASH}/, HORIZONTAL_BAR)
  value = value.to_s.gsub(/#{DOUBLE_VERTICAL_LINE}/, PARALLEL_TO)
  value
end