Merge pull request #1090 from jitsi/file_loading_err

Prevent from displaying broken page
This commit is contained in:
Дамян Минков 2016-10-31 13:00:06 -05:00 committed by GitHub
commit 9054e72b7f
1 changed files with 31 additions and 0 deletions

View File

@ -6,6 +6,37 @@
<script>
window.indexLoadedTime = window.performance.now();
console.log("(TIME) index.html loaded:\t", indexLoadedTime);
// XXX the code below listeners for errors and displays an error message
// in the document body when any of the required files fails to load.
// The intention is to prevent from displaying broken page.
var criticalFiles = [
"config.js",
"utils.js",
"do_external_connect.js",
"interface_config.js",
"lib-jitsi-meet.min.js",
"app.bundle.min.js",
"all.css"
];
var loadErrHandler = function(e) {
var target = e.target;
// Error on <script> and <link>(CSS)
// <script> will have .src and <link> .href
var fileRef = (target.src ? target.src : target.href);
if (("SCRIPT" === target.tagName || "LINK" === target.tagName)
&& criticalFiles.some(
function(file) { return fileRef.indexOf(file) !== -1 })) {
window.onload = function() {
document.body.innerHTML
= "The application failed to load, missing file: "
+ fileRef;
};
window.removeEventListener(
'error', loadErrHandler, true /* capture phase */);
}
}
window.addEventListener(
'error', loadErrHandler, true /* capture phase type of listener */);
</script>
<script><!--#include virtual="/config.js" --></script><!-- adapt to your needs, i.e. set hosts and bosh path -->
<script src="utils.js?v=1"></script>