]> cat aescling's git repositories - mastodon.git/commitdiff
Fix expiration date of filters being set to “Never” when editing them (#11204)
authorThibG <thib@sitedethib.com>
Sun, 30 Jun 2019 14:11:21 +0000 (16:11 +0200)
committerEugen Rochko <eugen@zeonfederated.com>
Sun, 30 Jun 2019 14:11:21 +0000 (16:11 +0200)
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

index 342207a55dfebe51e4cf63259477091e17206287..382562fb843a36fba848f8a365cd0b9afb1062c8 100644 (file)
@@ -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