diff --git a/client/js/loading-slow-alert.js b/client/js/loading-slow-alert.js index 1029004e..2eb990dd 100644 --- a/client/js/loading-slow-alert.js +++ b/client/js/loading-slow-alert.js @@ -27,10 +27,21 @@ window.g_LoungeErrorHandler = function LoungeErrorHandler(error) { title = document.getElementById("loading-page-message"); title.textContent = "An error has occured that prevented the client from loading correctly."; - var element = document.createElement("p"); - element.contentEditable = true; - element.textContent = error instanceof ErrorEvent ? error.message : error; - title.parentNode.insertBefore(element, title.nextSibling); + var summary = document.createElement("summary"); + summary.textContent = "More details"; + + if (error instanceof ErrorEvent) { + error = error.message + "\n\n" + error.stack + "\n\nView developer tools console for more information and a better stacktrace."; + } + + var data = document.createElement("pre"); + data.contentEditable = true; + data.textContent = error; + + var details = document.createElement("details"); + details.appendChild(summary); + details.appendChild(data); + title.parentNode.insertBefore(details, title.nextSibling); }; window.addEventListener("error", window.g_LoungeErrorHandler);