From 082b3b282f7863e4b10e9cb34624b4b167b75588 Mon Sep 17 00:00:00 2001
From: ThibG <thib@sitedethib.com>
Date: Sun, 30 Jun 2019 16:11:21 +0200
Subject: [PATCH] =?UTF-8?q?Fix=20expiration=20date=20of=20filters=20being?=
=?UTF-8?q?=20set=20to=20=E2=80=9CNever=E2=80=9D=20when=20editing=20them?=
=?UTF-8?q?=20(#11204)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
When editing a custom filter, select the shortest preset duration that
still covers the remaining time of that filter.
Fixes #9506
---
app/models/custom_filter.rb | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/app/models/custom_filter.rb b/app/models/custom_filter.rb
index 342207a55d..382562fb84 100644
--- a/app/models/custom_filter.rb
+++ b/app/models/custom_filter.rb
@@ -35,6 +35,13 @@ class CustomFilter < ApplicationRecord
before_validation :clean_up_contexts
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
def clean_up_contexts
--
GitLab