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/ || s == "\"" || start_with_specials?(s) || end_with_specials?(s) 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
end_with_specials?(string)
click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 50 def end_with_specials?(string) string =~ /\A[a-zA-Z]+[\(\)<>\[\]:;@\\,\."]+\Z/ 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
start_with_specials?(string)
click to toggle source
# File lib/mail-iso-2022-jp/common_methods_for_field.rb, line 46 def start_with_specials?(string) string =~ /\A[\(\)<>\[\]:;@\\,\."]+[a-zA-Z]+\Z/ end