2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/auto_session_timeout_helper.rb', line 2
def auto_session_timeout_js(options={})
frequency = options[:frequency] || 60
verbosity = options[:verbosity] || 2
attributes = options[:attributes] || {}
code = "function PeriodicalQuery() {\nvar request = new XMLHttpRequest();\nrequest.onload = function (event) {\n var status = event.target.status;\n var response = event.target.response;\n if (status === 200 && (response === false || response === 'false' || response === null)) {\n window.location.href = '\#{timeout_path}';\n }\n};\nrequest.open('GET', '\#{active_path}', true);\nrequest.responseType = 'json';\nrequest.send();\nsetTimeout(PeriodicalQuery, (\#{frequency} * 1000));\n}\nsetTimeout(PeriodicalQuery, (\#{frequency} * 1000));\n"
javascript_tag(code, attributes)
end
|