Source code
Revision control
Copy as Markdown
Other Tools
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html>
<!-- This page will accept some json as the uri query and pass it to InstallTrigger.install -->
<head>
<title>InstallTrigger tests</title>
<script type="text/javascript">
/* globals InstallTrigger */
/* exported startInstall */
function installCallback(url, status) {
document.getElementById("status").textContent = status;
dump("Sending InstallComplete\n");
var event = new CustomEvent("InstallComplete");
var target = window.parent ? window.parent : window;
target.dispatchEvent(event);
}
function startInstall(viaWindowLoaded = false) {
var event = new CustomEvent("InstallTriggered");
var text;
if (viaWindowLoaded) {
text = decodeURIComponent(document.location.search.substring(1));
} else {
text = decodeURIComponent(document.location.search.substring("?manualStartInstall".length));
}
var triggers = JSON.parse(text);
try {
document.getElementById("return").textContent = InstallTrigger.install(triggers, installCallback);
dump("Sending InstallTriggered\n");
window.dispatchEvent(event);
} catch (e) {
document.getElementById("return").textContent = "exception";
dump("Sending InstallTriggered\n");
window.dispatchEvent(event);
if (viaWindowLoaded) {
throw e;
}
}
}
window.onload = function () {
if (!document.location.search.startsWith("?manualStartInstall")) {
startInstall(true);
}
}
</script>
</head>
<body>
<p>InstallTrigger tests</p>
<p id="return"></p>
<p id="status"></p>
</body>
</html>