Class: WebConsole::Request

Inherits:
ActionDispatch::Request
  • Object
show all
Defined in:
lib/web_console/request.rb

Overview

Web Console tailored request object.

Defined Under Namespace

Classes: GetSecureIp

Constant Summary collapse

@@whitelisted_ips =
Whitelist.new

Instance Method Summary collapse

Instance Method Details

#acceptable?Boolean

Returns whether the request is acceptable.

Returns:

  • (Boolean)


25
26
27
# File 'lib/web_console/request.rb', line 25

def acceptable?
  xhr? && accepts.any? { |mime| Mime[:web_console_v2] == mime }
end

#from_whitelisted_ip?Boolean

Returns whether a request came from a whitelisted IP.

For a request to hit Web Console features, it needs to come from a white listed IP.

Returns:

  • (Boolean)


15
16
17
# File 'lib/web_console/request.rb', line 15

def from_whitelisted_ip?
  whitelisted_ips.include?(strict_remote_ip)
end

#strict_remote_ipObject

Determines the remote IP using our much stricter whitelist.



20
21
22
# File 'lib/web_console/request.rb', line 20

def strict_remote_ip
  GetSecureIp.new(self, whitelisted_ips).to_s
end