Module: Condensation::Filters::DaysSince

Defined in:
lib/condensation/filters/days_since.rb

Constant Summary collapse

SECONDS_PER_DAY =
86_400

Instance Method Summary collapse

Instance Method Details

#days_since(input) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/condensation/filters/days_since.rb', line 8

def days_since(input)
  return if input.nil?

  value = if input.is_a?(Time)
            input
          else
            begin
              Time.parse(input)
            rescue
              nil
            end
          end

  return unless value.is_a?(Time)

  diff = Time.now - value
  [diff.to_i / SECONDS_PER_DAY, 0].max
end