-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest-read-id.html
76 lines (66 loc) · 2.49 KB
/
test-read-id.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>test-read-id</title>
<script>
var ready = function(callback) {
if (document.readyState != "loading") callback();
else document.addEventListener("DOMContentLoaded", callback);
};
ready(function() {
var secret = '68dca265-45be-4cce-a31f-aa8a6eafedb5';
var initialized = false;
function setStatus(status) {
document.getElementById('status').textContent = status;
}
setStatus('Initializing read-id page');
function sendInit() {
if (initialized) return;
var initMsg = {tag: 'init', secret: secret};
console.log('Sending initMsg:', initMsg);
document.getElementById('read-id-frame').contentWindow.postMessage(initMsg, '*');
setTimeout(sendInit, 100);
}
window.addEventListener("message", (event) => {
console.log('Received message', event);
if (!event.data) {
setStatus('ERROR: Missing event.data in message');
return;
}
if (event.data.secret !== secret) {
setStatus('ERROR: event.data.secret is "' + event.data.secret + '" but should be "' + secret + '"');
return;
}
if (event.data.tag == 'initialized') {
initialized = true;
setStatus('Waiting for read-id message');
}
if (event.data.tag == 'read-id') {
if (!initialized) {
setStatus('ERROR: received "read-id" message before "initialized" message');
} else if (event.data.uin) { // we try UIN first, and then fall through to UID
setStatus('Received UIN "' + event.data.uin + '"');
} else if (event.data.uid) {
setStatus('Received UID "' + event.data.uid + '"');
} else {
setStatus('Error: read-id message sent without UID or UID');
}
}
}, false);
sendInit();
});
</script>
</head>
<body>
<p>
This is <tt>test-read-id.html</tt>
</p>
<p>
Status: <span id="status">Loading</span>
</p>
<hr>
<iframe id="read-id-frame" src="./read-id.html" style="width: 100%; height: 400px;"></iframe>
</div>
</body>
</html>