From 352bae8c3ef2aca41de4aacb85d5e036a1d2bace Mon Sep 17 00:00:00 2001 From: ThibG Date: Fri, 11 May 2018 13:20:58 +0200 Subject: Update session activation time (fixes #5605) (#7408) --- .../concerns/session_tracking_concern.rb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 app/controllers/concerns/session_tracking_concern.rb (limited to 'app/controllers/concerns') diff --git a/app/controllers/concerns/session_tracking_concern.rb b/app/controllers/concerns/session_tracking_concern.rb new file mode 100644 index 000000000..45361b019 --- /dev/null +++ b/app/controllers/concerns/session_tracking_concern.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +module SessionTrackingConcern + extend ActiveSupport::Concern + + UPDATE_SIGN_IN_HOURS = 24 + + included do + before_action :set_session_activity + end + + private + + def set_session_activity + return unless session_needs_update? + current_session.touch + end + + def session_needs_update? + !current_session.nil? && current_session.updated_at < UPDATE_SIGN_IN_HOURS.hours.ago + end +end -- cgit