module Sorcery::Controller::Submodules::ActivityLogging
This submodule keeps track of events such as login, logout, and last activity time, per user. It helps in estimating which users are active now in the site. This cannot be determined absolutely because a user might be reading a page without clicking anything for a while. This is the controller part of the submodule, which adds hooks to register user events, and methods to collect active users data for use in the app. see Socery::Model::Submodules::ActivityLogging for configuration options.
Attributes
register_last_activity_time[RW]
register_last_ip_address[RW]
register_login_time[RW]
register_logout_time[RW]
Public Class Methods
included(base)
click to toggle source
# File lib/sorcery/controller/submodules/activity_logging.rb, line 15 def self.included(base) base.send(:include, InstanceMethods) Config.module_eval do class << self attr_accessor :register_login_time attr_accessor :register_logout_time attr_accessor :register_last_activity_time attr_accessor :register_last_ip_address def merge_activity_logging_defaults! @defaults.merge!(:@register_login_time => true, :@register_logout_time => true, :@register_last_activity_time => true, :@register_last_ip_address => true) end end merge_activity_logging_defaults! end Config.after_login << :register_login_time_to_db Config.after_login << :register_last_ip_address Config.before_logout << :register_logout_time_to_db base.after_action :register_last_activity_time_to_db end
merge_activity_logging_defaults!()
click to toggle source
# File lib/sorcery/controller/submodules/activity_logging.rb, line 24 def merge_activity_logging_defaults! @defaults.merge!(:@register_login_time => true, :@register_logout_time => true, :@register_last_activity_time => true, :@register_last_ip_address => true) end