module Frikandel::BindSessionToIpAddress

Private Instance Methods

current_ip_address() click to toggle source
# File lib/frikandel/bind_session_to_ip_address.rb, line 30
def current_ip_address
  request.remote_ip
end
ip_address_match_with_current?() click to toggle source
# File lib/frikandel/bind_session_to_ip_address.rb, line 34
def ip_address_match_with_current?
  session[:ip_address] == current_ip_address
end
persist_session_ip_address() click to toggle source
# File lib/frikandel/bind_session_to_ip_address.rb, line 26
def persist_session_ip_address
  session[:ip_address] = current_ip_address
end
reset_session() click to toggle source
Calls superclass method
# File lib/frikandel/bind_session_to_ip_address.rb, line 38
def reset_session
  super
  persist_session_ip_address
end
validate_session_ip_address() click to toggle source
# File lib/frikandel/bind_session_to_ip_address.rb, line 16
def validate_session_ip_address
  if session.key?(:ip_address) && !ip_address_match_with_current?
    on_invalid_session
  elsif !session.key?(:ip_address)
    reset_session
  else # session ip address is valid
    persist_session_ip_address
  end
end