Fix and re-enable user activity update
This commit is contained in:
parent
8b701c11e3
commit
3196dfbda9
@ -12,12 +12,10 @@ module UserTrackingConcern
|
|||||||
private
|
private
|
||||||
|
|
||||||
def set_user_activity
|
def set_user_activity
|
||||||
return unless user_needs_sign_in_update?
|
current_user.update_sign_in!(request) if user_needs_sign_in_update?
|
||||||
current_user.update_tracked_fields!(request)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def user_needs_sign_in_update?
|
def user_needs_sign_in_update?
|
||||||
# user_signed_in? && (current_user.current_sign_in_at.nil? || current_user.current_sign_in_at < UPDATE_SIGN_IN_HOURS.hours.ago)
|
user_signed_in? && (current_user.current_sign_in_at.nil? || current_user.current_sign_in_at < UPDATE_SIGN_IN_HOURS.hours.ago)
|
||||||
false
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -159,6 +159,24 @@ class User < ApplicationRecord
|
|||||||
prepare_returning_user!
|
prepare_returning_user!
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def update_sign_in!(request, new_sign_in: false)
|
||||||
|
old_current, new_current = current_sign_in_at, Time.now.utc
|
||||||
|
self.last_sign_in_at = old_current || new_current
|
||||||
|
self.current_sign_in_at = new_current
|
||||||
|
|
||||||
|
old_current, new_current = current_sign_in_ip, request.remote_ip
|
||||||
|
self.last_sign_in_ip = old_current || new_current
|
||||||
|
self.current_sign_in_ip = new_current
|
||||||
|
|
||||||
|
if new_sign_in
|
||||||
|
self.sign_in_count ||= 0
|
||||||
|
self.sign_in_count += 1
|
||||||
|
end
|
||||||
|
|
||||||
|
save(validate: false) unless new_record?
|
||||||
|
prepare_returning_user!
|
||||||
|
end
|
||||||
|
|
||||||
def disable_two_factor!
|
def disable_two_factor!
|
||||||
self.otp_required_for_login = false
|
self.otp_required_for_login = false
|
||||||
otp_backup_codes&.clear
|
otp_backup_codes&.clear
|
||||||
|
Loading…
Reference in New Issue
Block a user