class Authlogic::Session::MagicColumn::AssignsLastRequestAt
Assigns the current time to the `last_request_at` attribute.
-
The `last_request_at` column must exist
-
Assignment can be disabled on a per-controller basis
-
Assignment will not happen more often than `last_request_at_threshold`
seconds.
-
current_time - a `Time`
-
record - eg. a `User`
-
controller - an `Authlogic::ControllerAdapters::AbstractAdapter`
-
last_request_at_threshold - integer - seconds
@api private
Public Class Methods
new(current_time, record, controller, last_request_at_threshold)
click to toggle source
# File lib/authlogic/session/magic_column/assigns_last_request_at.rb, line 20 def initialize(current_time, record, controller, last_request_at_threshold) @current_time = current_time @record = record @controller = controller @last_request_at_threshold = last_request_at_threshold end
Public Instance Methods
assign()
click to toggle source
# File lib/authlogic/session/magic_column/assigns_last_request_at.rb, line 27 def assign return unless assign? @record.last_request_at = @current_time end
Private Instance Methods
assign?()
click to toggle source
@api private
# File lib/authlogic/session/magic_column/assigns_last_request_at.rb, line 35 def assign? @record && @record.class.column_names.include?("last_request_at") && @controller.last_request_update_allowed? && ( @record.last_request_at.blank? || @last_request_at_threshold.to_i.seconds.ago >= @record.last_request_at ) end