2017-01-19 12:33:11 +01:00
|
|
|
values = {}
|
2017-10-10 17:23:41 +02:00
|
|
|
|
2017-01-19 12:33:11 +01:00
|
|
|
$(document).ready ->
|
2017-10-10 17:23:41 +02:00
|
|
|
# Import application/init variables
|
2017-01-19 12:33:11 +01:00
|
|
|
$("script[type='application/init']").each ->
|
|
|
|
try
|
2017-01-19 13:13:36 +01:00
|
|
|
tmp = JSON.parse $(this).text()
|
2017-01-19 12:33:11 +01:00
|
|
|
for k of tmp
|
|
|
|
values[k] = tmp[k]
|
2018-11-04 22:22:56 +01:00
|
|
|
#console.log 'values=', values[k]
|
2017-01-19 12:33:11 +01:00
|
|
|
catch e
|
|
|
|
console.log 'Parsing error', e
|
2017-10-10 17:23:41 +02:00
|
|
|
# Initialize JS communication channel
|
2018-07-27 21:43:23 +02:00
|
|
|
window.addEventListener "message", (e) ->
|
2018-07-28 07:28:30 +02:00
|
|
|
message = e.data
|
2018-10-27 21:23:58 +02:00
|
|
|
console.log 'message=', message
|
2018-07-28 07:28:30 +02:00
|
|
|
client_id = decodeURIComponent message.split(' ')[0]
|
2018-11-04 22:22:56 +01:00
|
|
|
#console.log 'client_id=', client_id
|
2018-07-28 07:28:30 +02:00
|
|
|
session_state = decodeURIComponent message.split(' ')[1]
|
2018-11-04 22:22:56 +01:00
|
|
|
#console.log 'session_state=', session_state
|
2018-07-28 07:28:30 +02:00
|
|
|
salt = decodeURIComponent session_state.split('.')[1]
|
2018-11-04 22:22:56 +01:00
|
|
|
#console.log 'salt=', salt
|
2018-10-28 21:58:59 +01:00
|
|
|
# hash ??????
|
|
|
|
#ss = hash.toString(CryptoJS.enc.Base64) + '.' + salt
|
2018-11-07 21:28:40 +01:00
|
|
|
ss = btoa(client_id + ' ' + e.origin + ' ' + salt) + '.' + salt
|
|
|
|
#word = CryptoJS.enc.Utf8.parse(client_id + ' ' + e.origin + ' ' + salt)
|
|
|
|
#ss = CryptoJS.enc.Base64.stringify(word) + '.' + salt
|
2018-07-28 07:28:30 +02:00
|
|
|
if session_state == ss
|
|
|
|
stat = 'unchanged'
|
|
|
|
else
|
|
|
|
stat = 'changed'
|
|
|
|
e.source.postMessage stat, e.origin
|
|
|
|
, false
|