X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/03fdc6d67f1826b1a202eb50c284fa9202af24af..fb854652ea47d7b3fa1657722f1da768eaba4f25:/app/models/note.rb?ds=sidebyside diff --git a/app/models/note.rb b/app/models/note.rb index 24ba6854d..0b0597434 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -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