# Install filter when we are included
def included(controller)
+ super
controller.after_action :persist_session
end
end
# session_expires_after 1.hour
# session_expires_after 2.weeks
def session_expires_after(seconds)
- session[session_persistence_key] = seconds
+ session[session_persistence_key] = seconds.to_i
end
# Expire the session.
# Filter callback
def persist_session
- if session[session_persistence_key]
- request.session_options[:expire_after] = session[session_persistence_key]
- end
- rescue
+ request.session_options[:expire_after] = session[session_persistence_key] if session[session_persistence_key]
+ rescue StandardError
reset_session
end
end