Module Globalize::CoreExtensions::Date
In: vendor/plugins/globalize/lib/globalize/localization/core_ext.rb

Methods

loc   localize  

Public Instance methods

loc(format)

Alias for localize

Acts the same as strftime, but returns a localized version of the formatted date/time string.

[Source]

     # File vendor/plugins/globalize/lib/globalize/localization/core_ext.rb, line 147
147:       def localize(format)
148:         # unabashedly stole this snippet from Tadayoshi Funaba's Date class
149:         o = ''
150:         format.scan(/%[EO]?.|./o) do |c|
151:           cc = c.sub(/^%[EO]?(.)$/o, '%\\1')
152:           case cc
153:           when '%A'; o << "#{::Date::DAYNAMES[wday]} [weekday]".t(::Date::DAYNAMES[wday])
154:           when '%a'; o << "#{::Date::ABBR_DAYNAMES[wday]} [abbreviated weekday]".t(::Date::ABBR_DAYNAMES[wday])
155:           when '%B'; o << "#{::Date::MONTHNAMES[mon]} [month]".t(::Date::MONTHNAMES[mon])
156:           when '%b'; o << "#{::Date::ABBR_MONTHNAMES[mon]} [abbreviated month]".t(::Date::ABBR_MONTHNAMES[mon])
157:           when '%c'; o << ((Locale.active? && !Locale.active.date_format.nil?) ? 
158:             localize(Locale.active.date_format) : strftime('%Y-%m-%d'))
159:           when '%p'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("am") else 'PM [Post Meridiem]'.t("am") end
160:           when '%P'; o << if hour < 12 then 'AM [Ante Meridiem]'.t("AM") else 'PM [Post Meridiem]'.t("PM") end
161:           else;      o << c
162:           end
163:         end
164:         strftime(o)
165:       end

[Validate]