Class: Bugsage::SessionClear
- Inherits:
-
Object
- Object
- Bugsage::SessionClear
show all
- Extended by:
- JsonEndpoint
- Defined in:
- lib/bugsage/session_clear.rb
Constant Summary
collapse
- ENDPOINT =
"/bugsage/clear"
Class Method Summary
collapse
error_response, json_response, not_found, parse_request_body
Class Method Details
.handle_request(env) ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/bugsage/session_clear.rb', line 9
def self.handle_request(env)
return not_found unless Bugsage.configuration.enabled?
Store.clear!
ConsoleContext.clear!
AiContext.clear!
redirect_to = "/bugsage"
if json_request?(env)
json_response({ ok: true, message: Bugsage.t("errors.session_logs_cleared") })
else
redirect_response(redirect_to)
end
end
|
.json_request?(env) ⇒ Boolean
25
26
27
28
29
|
# File 'lib/bugsage/session_clear.rb', line 25
def self.json_request?(env)
accept = env["HTTP_ACCEPT"].to_s
content_type = env["CONTENT_TYPE"].to_s
accept.include?("application/json") || content_type.include?("application/json")
end
|
.redirect_response(path) ⇒ Object
31
32
33
|
# File 'lib/bugsage/session_clear.rb', line 31
def self.redirect_response(path)
[302, { "Location" => path, "Content-Type" => "text/plain" }, [Bugsage.t("errors.session_logs_cleared")]]
end
|