X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/99a64ba8c16d5d8b5baaac4e4d9d994d17103b3e..f1e0212af3e949a876239ba2c515884052c3676d:/app/models/user.rb diff --git a/app/models/user.rb b/app/models/user.rb index abd001f06..8c75b4ef4 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -113,7 +113,8 @@ class User < ApplicationRecord validates_email_format_of :email, :if => proc { |u| u.email_changed? } validates_email_format_of :new_email, :allow_blank => true, :if => proc { |u| u.new_email_changed? } - after_initialize :set_defaults + alias_attribute :created_at, :creation_time + before_save :encrypt_password before_save :update_tile after_save :spam_check @@ -240,8 +241,8 @@ class User < ApplicationRecord end ## - # delete a user - leave the account but purge most personal data - def delete + # destroy a user - leave the account but purge most personal data + def destroy avatar.purge_later self.display_name = "user_#{id}" @@ -307,7 +308,7 @@ class User < ApplicationRecord end def max_messages_per_hour - account_age_in_seconds = Time.now.utc - creation_time + account_age_in_seconds = Time.now.utc - created_at account_age_in_hours = account_age_in_seconds / 3600 recent_messages = messages.where("sent_on >= ?", Time.now.utc - 3600).count active_reports = issues.with_status(:open).sum(:reports_count) @@ -316,7 +317,7 @@ class User < ApplicationRecord end def max_friends_per_hour - account_age_in_seconds = Time.now.utc - creation_time + account_age_in_seconds = Time.now.utc - created_at account_age_in_hours = account_age_in_seconds / 3600 recent_friends = Friendship.where(:befriendee => self).where("created_at >= ?", Time.now.utc - 3600).count active_reports = issues.with_status(:open).sum(:reports_count) @@ -326,10 +327,6 @@ class User < ApplicationRecord private - def set_defaults - self.creation_time = Time.now.getutc unless attribute_present?(:creation_time) - end - def encrypt_password if pass_crypt_confirmation self.pass_crypt, self.pass_salt = PasswordHash.create(pass_crypt)