diff --git a/lib/Utils.js b/lib/Utils.js
index 66cd559..f7f1b00 100644
--- a/lib/Utils.js
+++ b/lib/Utils.js
@@ -15,6 +15,27 @@ var logs = "";
function Utils(mainWindow) {
_mainWindow = mainWindow;
+
+ this.injectVar("gglol", "test");
+
+ //Let's inject a decent alert box
+ var bdAlert = '\
+
\
+ ';
+ this.injectVar("BdAlert", bdAlert);
}
//Get browser mainwindow
@@ -99,11 +120,42 @@ Utils.prototype.updateLoading = function(message, cur, max) {
//Logger
Utils.prototype.log = function(message) {
- console.log("[BetterDiscord]" + message);
- logs += message + eol;
+ console.log("[BetterDiscord INF] " + message);
+ var d = new Date();
+ var ds = ("00" + (d.getDate() + 1)).slice(-2) + "/" +
+ ("00" + d.getMonth()).slice(-2) + "/" +
+ d.getFullYear() + " " +
+ ("00" + d.getHours()).slice(-2) + ":" +
+ ("00" + d.getMinutes()).slice(-2) + ":" +
+ ("00" + d.getSeconds()).slice(-2);
+ logs += "[INF]["+ds+"] " + message + eol;
+}
+Utils.prototype.err = function(err) {
+ console.log("[BetterDiscord ERR] " + err.message);
+ var d = new Date();
+ var ds = ("00" + (d.getDate() + 1)).slice(-2) + "/" +
+ ("00" + d.getMonth()).slice(-2) + "/" +
+ d.getFullYear() + " " +
+ ("00" + d.getHours()).slice(-2) + ":" +
+ ("00" + d.getMinutes()).slice(-2) + ":" +
+ ("00" + d.getSeconds()).slice(-2);
+ logs += "[ERR]["+ds+"] " + err.message + eol;
+}
+Utils.prototype.warn = function(message) {
+ console.log("[BetterDiscord WRN] " + message);
+ var d = new Date();
+ var ds = ("00" + (d.getDate() + 1)).slice(-2) + "/" +
+ ("00" + d.getMonth()).slice(-2) + "/" +
+ d.getFullYear() + " " +
+ ("00" + d.getHours()).slice(-2) + ":" +
+ ("00" + d.getMinutes()).slice(-2) + ":" +
+ ("00" + d.getSeconds()).slice(-2);
+ logs += "[WRN]["+ds+"] " + message + eol;
}
Utils.prototype.saveLogs = function(path) {
- _fs.writeFileSync(path + "/logs.log", logs);
+ try {
+ _fs.writeFileSync(path + "/logs.log", logs);
+ }catch(err) {}
}
//Execute javascript
@@ -116,6 +168,22 @@ Utils.prototype.execJsParse = function(js) {
this.execJs(js); //TODO
}
+//Inject variable
+Utils.prototype.injectVar = function(variable, data) {
+ this.execJs('var ' + variable + ' = "' + data + '";');
+}
+Utils.prototype.injectVarRaw = function(variable, data) {
+ this.execJs('var ' + variable + ' = ' + data + ';');
+}
+
+//Alert
+Utils.prototype.alert = function(title, message) {
+ this.execJs("document.body.insertAdjacentHTML('afterbegin', BdAlert);");
+ this.execJs("document.getElementById('bdAlertTitle').innerHTML = \""+title+"\";");
+ this.execJs("document.getElementById('bdAlertScroller').innerHTML = \""+message+"\";");
+ this.execJs("document.getElementById('bdAlert').style.opacity = 1;");
+}
+
//Css internal style injector
Utils.prototype.injectStylesheet = function(url) {
var self = this;