]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/note.rb
Merge remote-tracking branch 'upstream/pull/4654'
[rails.git] / app / models / note.rb
index 24ba6854dea3ec7efb646fca01b267dc4d33b14e..0b0597434f0fa5842f31862da19bdf9ec1711da6 100644 (file)
@@ -37,6 +37,8 @@ class Note < ApplicationRecord
 
   after_initialize :set_defaults
 
+  DEFAULT_FRESHLY_CLOSED_LIMIT = 7.days
+
   # Sanity check the latitude and longitude and add an error if it's broken
   def validate_position
     errors.add(:base, "Note is not in the world") unless in_world?
@@ -45,7 +47,7 @@ class Note < ApplicationRecord
   # Close a note
   def close
     self.status = "closed"
-    self.closed_at = Time.now.getutc
+    self.closed_at = Time.now.utc
     save
   end
 
@@ -66,6 +68,18 @@ class Note < ApplicationRecord
     !closed_at.nil?
   end
 
+  def freshly_closed?
+    return false unless closed?
+
+    Time.now.utc < freshly_closed_until
+  end
+
+  def freshly_closed_until
+    return nil unless closed?
+
+    closed_at + DEFAULT_FRESHLY_CLOSED_LIMIT
+  end
+
   # Return the author object, derived from the first comment
   def author
     comments.first.author