Class: Datetime::DatetimeComponent
- Inherits:
-
ViewComponent::Base
- Object
- ViewComponent::Base
- Datetime::DatetimeComponent
- Defined in:
- lib/datetimecomponent.rb
Constant Summary collapse
- FULL_DATETIME_ARGS =
{ null: '', short: '%a, %-d %b %y, %H:%M %Z', long: '%A, %-d %B %Y, %-l:%M %P %Z' }.freeze
- DAY_ARGS =
{ null: '', numeric: '%-d' }.freeze
- WEEKDAY_ARGS =
{ null: '', short: '%a', long: '%A'}.freeze
- MONTH_ARGS =
{ null: '', short: '%b', long: '%B', numeric: '%-m' }.freeze
- YEAR_ARGS =
{ null: '', short: '%-y', long: '%-Y' }.freeze
- DISPLAY_TIME_ARGS =
{ null: '', h12: '%-l:%M', h12meridian: '%-l:%M %P', h24: '%H:%M' }.freeze
Instance Method Summary collapse
-
#initialize(custom_datetime_format: '', full_datetime: :null, date_separator: '/', weekday: :null, day: :null, month: :null, year: :null, display_time: :null, display_timezone: false, display_zone_offset: false, time_zone: 'UTC') ⇒ DatetimeComponent
constructor
A new instance of DatetimeComponent.
Constructor Details
#initialize(custom_datetime_format: '', full_datetime: :null, date_separator: '/', weekday: :null, day: :null, month: :null, year: :null, display_time: :null, display_timezone: false, display_zone_offset: false, time_zone: 'UTC') ⇒ DatetimeComponent
Returns a new instance of DatetimeComponent.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/datetimecomponent.rb', line 18 def initialize(custom_datetime_format: '', full_datetime: :null, date_separator: '/', weekday: :null, day: :null, month: :null, year: :null, display_time: :null, display_timezone: false, display_zone_offset: false, time_zone: 'UTC') super @_routes = nil @date_separator = date_separator @time_zone = TZInfo::Timezone.get(time_zone) @datetime_format = custom_datetime_format return unless @datetime_format.empty? @format_args = {} @format_args[:full_datetime] = FULL_DATETIME_ARGS[full_datetime] @format_args[:weekday] = WEEKDAY_ARGS[weekday] @format_args[:day] = DAY_ARGS[day] @format_args[:month] = MONTH_ARGS[month] @format_args[:year] = YEAR_ARGS[year] @format_args[:display_time] = DISPLAY_TIME_ARGS[display_time] @format_args[:display_timezone] = display_timezone ? '%Z' : '' @format_args[:zone_offset] = display_zone_offset ? 'UTC %:z' : '' @datetime_format = build_datetime_format end |