Class: Mail::DateField
- Inherits:
-
StructuredField
- Object
- StructuredField
- Mail::DateField
- Defined in:
- lib/mail/jdec/fields/date_field_patch.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(value = nil, charset = nil) ⇒ DateField
constructor
A new instance of DateField.
Constructor Details
#initialize(value = nil, charset = nil) ⇒ DateField
Returns a new instance of DateField.
24 25 26 |
# File 'lib/mail/jdec/fields/date_field_patch.rb', line 24 def initialize(value = nil, charset = nil) super(CAPITALIZED_FIELD, self.class.normalize_datetime(value), charset) end |
Class Method Details
.normalize_datetime(string) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/mail/jdec/fields/date_field_patch.rb', line 28 def self.normalize_datetime(string) if Utilities.blank?(string) datetime = ::DateTime.now else stripped = string.to_s.gsub(/\(.*?\)/, '').squeeze(' ') begin datetime = ::DateTime.parse(stripped) rescue ArgumentError => e raise unless 'invalid date' == e. end end if datetime datetime.strftime('%a, %d %b %Y %H:%M:%S %z') else string end end |