]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/3404'
authorTom Hughes <tom@compton.nu>
Wed, 22 Dec 2021 15:36:25 +0000 (15:36 +0000)
committerTom Hughes <tom@compton.nu>
Wed, 22 Dec 2021 15:36:25 +0000 (15:36 +0000)
1  2 
app/models/user.rb

diff --combined app/models/user.rb
index 1bb53215261d426294449a00e038733e2bab6900,abd001f0647b95e6d774bf7b849f459a59576dd8..8c75b4ef45e7ad4fd608a4fd59c2ecb7a332b538
@@@ -45,7 -45,6 +45,6 @@@
  
  class User < ApplicationRecord
    require "digest"
-   require "xml/libxml"
  
    has_many :traces, -> { where(:visible => true) }
    has_many :diary_entries, -> { order(:created_at => :desc) }
    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
    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}"
    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)
    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)
  
    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)