parse date using format

This commit is contained in:
Pete Matsyburka
2024-06-10 12:08:56 +03:00
parent 7568f563cb
commit 1289aff493
2 changed files with 11 additions and 1 deletions
+3 -1
View File
@@ -56,7 +56,9 @@ module Submitters
(value.to_f % 1).zero? ? value.to_i : value.to_f
elsif field['type'] == 'date' && value.present? && value != '{{date}}'
if value.is_a?(Integer)
Time.zone.at(value.to_s.first(10).to_i).to_date
Time.zone.at(value.to_s.first(10).to_i).to_date.to_s
elsif value.gsub(/\w/, '0') == field.dig('preferences', 'format').to_s.gsub(/\w/, '0')
TimeUtils.parse_date_string(value, field.dig('preferences', 'format')).to_s
else
Date.parse(value).to_s
end
+8
View File
@@ -32,6 +32,14 @@ module TimeUtils
tz_info.abbreviation(time)
end
def parse_date_string(string, pattern)
pattern = pattern.sub(/Y+/, YEAR_FORMATS)
.sub(/M+/, MONTH_FORMATS)
.sub(/D+/, DAY_FORMATS)
Date.strptime(string, pattern)
end
def format_date_string(string, format, locale)
date = Date.parse(string.to_s)