blob: 053135a67ed5e12dee465d39627d076e8547a049 (
plain) (
tree)
|
|
const app_version = "1.0.14-beta";
const previous_commit = "20505fc48713c600c345814d4a9c2e0747c77152";
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js")
.then(() => { })
.catch((err) => console.log("Service worker registration failed", err));
}
// Listen to messages from service workers.
if (navigator.serviceWorker) {
navigator.serviceWorker.addEventListener('message', (event) => {
if (event.data.msg === "install") {
window.location.replace("/index.html");
}
});
}
/**
* Displays a user-friendly text to the user and
* detailed text to developer (console)
* @param {string} usermsg User-friendly message
* @param {string} devmsg Developer-friendly message
*/
async function UIAlert(usermsg, devmsg) {
if (true) { // če bo kakšen dev switch?
M.toast( { html: usermsg } );
console.log(`[BežiApp UIAlert] ${usermsg} ${devmsg}`);
} else {
M.toast( { html: `${usermsg} ${devmsg}` } );
}
}
/**
* Handles GSEC error - notifies the user and prints a console message
* @param {Object} err GSEC error object
*/
function gsecErrorHandlerUI(err) {
console.log(`gsecErrorHanderUI: handling ${err}`);
if(err == GSEC_ERR_NET || err == GSEC_ERR_NET_POSTBACK_GET ||
err == GSEC_ERR_NET_POSTBACK_POST) {
UIAlert( D("gsecErrNet") );
} else if(err == GSEC_ERR_LOGIN) {
UIAlert( D("gsecErrLogin") );
localforage.setItem("logged_in", false).then( () => {
window.location.replace("/index.html");
});
} else {
UIAlert( D("gsecErrOther") );
}
}
var error_report_function = async function (msg, url, lineNo, columnNo, error) {
localforage.getItem("errorReporting").then(async function(value) {
let selectedE = value;
if(value == null || value.length < 1) {
selectedE = "on";
}
if(selectedE == "on") {
var data = {};
data.error = {"msg": msg, "url": url, "line": lineNo, "column": columnNo, "obj": error};
data.client = {"ua": navigator.userAgent, "app_version": app_version, "previous_commit": previous_commit, "username": null};
// Load required data
data.client.username = await localforage.getItem("username");
data.type = "error";
$.post("https://beziapp-report.gimb.tk/", data);
} else {
console.log("error not reported as reporting is disabled!");
}
}).catch(() => {});
return false;
}
window.onerror = error_report_function;
window.onunhandledrejection = error_report_function;
|