Module: ActiveObject::Date
- Defined in:
- lib/active_object/date.rb
Instance Method Summary collapse
- #count_centuries_since(time) ⇒ Object (also: #count_centuries_until)
- #count_days_since(time) ⇒ Object (also: #count_days_until)
- #count_decades_since(time) ⇒ Object (also: #count_decades_until)
- #count_hours_since(time) ⇒ Object (also: #count_hours_until)
- #count_milleniums_since(time) ⇒ Object (also: #count_milleniums_until)
- #count_minutes_since(time) ⇒ Object (also: #count_minutes_until)
- #count_seconds_since(time) ⇒ Object (also: #count_seconds_until)
- #count_weeks_since(time) ⇒ Object (also: #count_weeks_until)
- #count_years_since(time) ⇒ Object (also: #count_years_until)
- #format(string) ⇒ Object
- #to_format(key = :datetime_iso) ⇒ Object (also: #stamp)
Instance Method Details
#count_centuries_since(time) ⇒ Object Also known as: count_centuries_until
36 37 38 |
# File 'lib/active_object/date.rb', line 36 def count_centuries_since(time) count_seconds_since(time) / CENTURY end |
#count_days_since(time) ⇒ Object Also known as: count_days_until
42 43 44 |
# File 'lib/active_object/date.rb', line 42 def count_days_since(time) count_seconds_since(time) / DAY end |
#count_decades_since(time) ⇒ Object Also known as: count_decades_until
48 49 50 |
# File 'lib/active_object/date.rb', line 48 def count_decades_since(time) count_seconds_since(time) / DECADE end |
#count_hours_since(time) ⇒ Object Also known as: count_hours_until
54 55 56 |
# File 'lib/active_object/date.rb', line 54 def count_hours_since(time) count_seconds_since(time) / HOUR end |
#count_milleniums_since(time) ⇒ Object Also known as: count_milleniums_until
60 61 62 |
# File 'lib/active_object/date.rb', line 60 def count_milleniums_since(time) count_seconds_since(time) / MILLENNIUM end |
#count_minutes_since(time) ⇒ Object Also known as: count_minutes_until
66 67 68 |
# File 'lib/active_object/date.rb', line 66 def count_minutes_since(time) count_seconds_since(time) / MINUTE end |
#count_seconds_since(time) ⇒ Object Also known as: count_seconds_until
72 73 74 |
# File 'lib/active_object/date.rb', line 72 def count_seconds_since(time) (to_time.to_f - time.to_time.to_f).abs end |
#count_weeks_since(time) ⇒ Object Also known as: count_weeks_until
78 79 80 |
# File 'lib/active_object/date.rb', line 78 def count_weeks_since(time) count_seconds_since(time) / WEEK end |
#count_years_since(time) ⇒ Object Also known as: count_years_until
84 85 86 |
# File 'lib/active_object/date.rb', line 84 def count_years_since(time) count_seconds_since(time) / YEAR end |
#format(string) ⇒ Object
90 91 92 93 94 95 96 97 98 99 |
# File 'lib/active_object/date.rb', line 90 def format(string) delimiters = string.scan(/\W+/) formatters = string.scan(/[a-z0-9_]+/i) string = formatters.map do |unit| "%#{STRING_UNITS.fetch(unit.to_sym)}#{delimiters.shift || ''}" end strftime(string.join) end |
#to_format(key = :datetime_iso) ⇒ Object Also known as: stamp
101 102 103 |
# File 'lib/active_object/date.rb', line 101 def to_format(key = :datetime_iso) strftime(KEY_UNITS.fetch(key.to_sym)) end |