Class: Slk::Formatters::DurationFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/slk/formatters/duration_formatter.rb

Overview

Formats Duration objects for display

Instance Method Summary collapse

Instance Method Details

#format(duration) ⇒ Object



7
8
9
10
11
# File 'lib/slk/formatters/duration_formatter.rb', line 7

def format(duration)
  return '' if duration.nil? || duration.zero?

  duration.to_s
end

#format_remaining(seconds) ⇒ Object



13
14
15
16
17
# File 'lib/slk/formatters/duration_formatter.rb', line 13

def format_remaining(seconds)
  return '' if seconds.nil? || seconds <= 0

  Models::Duration.new(seconds: seconds).to_s
end

#format_until(timestamp) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/slk/formatters/duration_formatter.rb', line 19

def format_until(timestamp)
  return '' if timestamp.nil? || timestamp <= 0

  remaining = timestamp - Time.now.to_i
  return 'expired' if remaining <= 0

  format_remaining(remaining)
end