Sha256: b9a5c61ec228e7e43d60a4400eb34ca076d67f6e11fdec39f7c5475d50198e2f
Contents?: true
Size: 1.09 KB
Versions: 2
Compression:
Stored size: 1.09 KB
Contents
# frozen_string_literal: true require 'kingsman/hooks/timeoutable' module Kingsman module Models # Timeoutable takes care of verifying whether a user session has already # expired or not. When a session expires after the configured time, the user # will be asked for credentials again, it means, they will be redirected # to the sign in page. # # == Options # # Timeoutable adds the following options to +kingsman+: # # * +timeout_in+: the interval to timeout the user session without activity. # # == Examples # # user.timedout?(30.minutes.ago) # module Timeoutable extend ActiveSupport::Concern def self.required_fields(klass) [] end # Checks whether the user session has expired based on configured time. def timedout?(last_access) !timeout_in.nil? && last_access && last_access <= timeout_in.ago end def timeout_in self.class.timeout_in end private module ClassMethods Kingsman::Models.config(self, :timeout_in) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kingsman-0.1.1 | lib/kingsman/models/timeoutable.rb |
kingsman-0.1.0 | lib/kingsman/models/timeoutable.rb |