class RackPassword::BlockValidator
Attributes
options[RW]
request[RW]
Public Class Methods
new(options, request)
click to toggle source
# File lib/rack_password.rb, line 45 def initialize options, request @options = options @request = request end
Public Instance Methods
valid?()
click to toggle source
# File lib/rack_password.rb, line 50 def valid? valid_path? || valid_code?(@request.cookies[@options[:key].to_s]) || valid_ip? || valid_custom_rule? end
valid_code?(code)
click to toggle source
# File lib/rack_password.rb, line 63 def valid_code? code return false if @options[:auth_codes].nil? @options[:auth_codes].include? code end
valid_custom_rule?()
click to toggle source
# File lib/rack_password.rb, line 68 def valid_custom_rule? return false if @options[:custom_rule].nil? !!@options[:custom_rule].call(@request) end
valid_ip?()
click to toggle source
# File lib/rack_password.rb, line 54 def valid_ip? return false if @options[:ip_whitelist].nil? @options[:ip_whitelist].include? @request.ip.to_s end
valid_path?()
click to toggle source
# File lib/rack_password.rb, line 59 def valid_path? !!(@request.path =~ @options[:path_whitelist]) end