Sha256: 436f298cc888c66d5c60385435e99fb244825fc6933b70e3aee5241499b84776
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
module JekyllLanguagePlugin module DateLocalizer def self.localize_date(date, format, context) translation = JekyllLanguagePlugin::LiquidContext.get_language_data(context, 'date') # validate language translation return nil if translation.nil? || !['abbr_daynames', 'daynames', 'abbr_monthnames', 'monthnames'].all? {|s| translation.key?(s) && translation[s].is_a?(Array) } || translation['abbr_daynames'].size < 7 || translation['daynames'].size < 7 || translation['abbr_monthnames'].size < 12 || translation['monthnames'].size < 12 #convert to extended Time class date2 = JLPTime.at(date.to_i) date2.strftime_translate(format, translation) end class JLPTime < Time def strftime_translate(format = '%F', translation) result = self.strftime( #...you replaced the language dependent parts. format.gsub(/%([aAbB])/){ |m| case $1 when 'a'; translation['abbr_daynames'][self.wday] when 'A'; translation['daynames'][self.wday] when 'b'; translation['abbr_monthnames'][self.mon-1] when 'B'; translation['monthnames'][self.mon-1] else raise "Date#strftime: InputError" end }) if defined? @@encoding_converter @@encoding_converter.iconv(result) else result end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jekyll-language-plugin-1.1.0 | lib/jekyll-language-plugin/date_localizer.rb |