X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/f5db9cbb207e17fc8a2f15f681819e9e55aa1906..3734cff2bab6dd2e6527d991bf70cf9d52f026d4:/app/models/changeset.rb?ds=inline diff --git a/app/models/changeset.rb b/app/models/changeset.rb index ce0943824..abb494de6 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -14,11 +14,12 @@ # # Indexes # -# changesets_bbox_idx (min_lat,max_lat,min_lon,max_lon) USING gist -# changesets_closed_at_idx (closed_at) -# changesets_created_at_idx (created_at) -# changesets_user_id_created_at_idx (user_id,created_at) -# changesets_user_id_id_idx (user_id,id) +# changesets_bbox_idx (min_lat,max_lat,min_lon,max_lon) USING gist +# changesets_closed_at_idx (closed_at) +# changesets_created_at_idx (created_at) +# changesets_user_id_created_at_idx (user_id,created_at) +# changesets_user_id_id_idx (user_id,id) +# index_changesets_on_user_id_and_closed_at (user_id,closed_at) # # Foreign Keys # @@ -71,7 +72,7 @@ class Changeset < ApplicationRecord # note that this may not be a hard limit - due to timing changes and # concurrency it is possible that some changesets may be slightly # longer than strictly allowed or have slightly more changes in them. - ((closed_at > Time.now.utc) && (num_changes <= MAX_ELEMENTS)) + (closed_at > Time.now.utc) && (num_changes <= MAX_ELEMENTS) end def set_closed_time_now @@ -212,4 +213,16 @@ class Changeset < ApplicationRecord save_with_tags! end + + def subscribe(user) + subscribers << user + end + + def unsubscribe(user) + subscribers.delete(user) + end + + def subscribed?(user) + subscribers.exists?(user.id) + end end