48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/spiderfw/i18n/rails.rb', line 48
def localize_date_time(locale, object, format = :default, options={})
l = @locale_data
type = object.respond_to?(:sec) ? 'time' : 'date'
formats = l["#{type}.formats"]
format = formats[format.to_s] if formats && formats[format.to_s]
raise "Format #{format} not found" unless format
format = format.to_s.dup
format.gsub!(/%a/, l['date.abbr_day_names'][object.wday])
format.gsub!(/%A/, l["date.day_names"][object.wday])
format.gsub!(/%b/, l["date.abbr_month_names"][object.mon])
format.gsub!(/%B/, l["date.month_names"][object.mon])
format.gsub!(/%p/, l["time.#{object.hour < 12 ? :am : :pm}"]) if object.respond_to? :hour
object.strftime(format)
end
|