Fix expiration date of filters being set to “Never” when editing them (#11204)

When editing a custom filter, select the shortest preset duration that
still covers the remaining time of that filter.

Fixes #9506
This commit is contained in:
ThibG 2019-06-30 16:11:21 +02:00 committed by Eugen Rochko
parent 0367ddb62c
commit 5d79df0273

View File

@ -35,6 +35,13 @@ class CustomFilter < ApplicationRecord
before_validation :clean_up_contexts before_validation :clean_up_contexts
after_commit :remove_cache after_commit :remove_cache
def expires_in
return @expires_in if defined?(@expires_in)
return nil if expires_at.nil?
[30.minutes, 1.hour, 6.hours, 12.hours, 1.day, 1.week].find { |expires_in| expires_in.from_now >= expires_at }
end
private private
def clean_up_contexts def clean_up_contexts