Module: DOTIW::Methods
- Extended by:
- Methods
- Included in:
- ActionView::Helpers::DateHelper, Methods
- Defined in:
- lib/dotiw/methods.rb
Instance Method Summary collapse
- #distance_of_time(seconds, options = {}) ⇒ Object
- #distance_of_time_in_words(from_time, to_time = 0, include_seconds_or_options = {}, options = {}) ⇒ Object
- #distance_of_time_in_words_hash(from_time, to_time, options = {}) ⇒ Object
- #time_ago_in_words(from_time, include_seconds_or_options = {}) ⇒ Object
Instance Method Details
#distance_of_time(seconds, options = {}) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/dotiw/methods.rb', line 14 def distance_of_time(seconds, = {}) = ().reverse_merge( include_seconds: true ) .delete(:compact) _display_time_in_words DOTIW::TimeHash.new(seconds, nil, nil, ).to_hash, end |
#distance_of_time_in_words(from_time, to_time = 0, include_seconds_or_options = {}, options = {}) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/dotiw/methods.rb', line 22 def distance_of_time_in_words(from_time, to_time = 0, = {}, = {}) from_time = normalize_distance_of_time_argument_to_time(from_time) to_time = normalize_distance_of_time_argument_to_time(to_time) from_time, to_time = to_time, from_time if from_time > to_time if .is_a?(Hash) = else = .dup [:include_seconds] ||= !! end return distance_of_time(to_time.to_i, ) if from_time.to_i == 0 = () hash = distance_of_time_in_words_hash(from_time, to_time, ) _display_time_in_words(hash, ) end |
#distance_of_time_in_words_hash(from_time, to_time, options = {}) ⇒ Object
7 8 9 10 11 12 |
# File 'lib/dotiw/methods.rb', line 7 def distance_of_time_in_words_hash(from_time, to_time, = {}) from_time = from_time.to_time if !from_time.is_a?(Time) && from_time.respond_to?(:to_time) to_time = to_time.to_time if !to_time.is_a?(Time) && to_time.respond_to?(:to_time) DOTIW::TimeHash.new(nil, from_time, to_time, ).to_hash end |
#time_ago_in_words(from_time, include_seconds_or_options = {}) ⇒ Object
41 42 43 |
# File 'lib/dotiw/methods.rb', line 41 def time_ago_in_words(from_time, = {}) distance_of_time_in_words(from_time, Time.current, ) end |