diff --git a/monitor.htm b/monitor.htm index 84c57f9..c16f9f9 100644 --- a/monitor.htm +++ b/monitor.htm @@ -22,42 +22,50 @@ try { // grab stage 2 - fetch('https://endpwn.github.io/endpwn3/stage2.js?_=' + Date.now()).then(x => x.text()).then(stage2 => { + fetch('https://endpwn.github.io/endpwn3/stage2.js?_=' + Date.now()).then(x => x.text()).then(stage2 => - // the monitor gets node integration; no silly DiscordNative bullshit - var fs = require('original-fs'); - var electron = require('electron').remote; + // grab shared + fetch('https://endpwn.github.io/endpwn3/shared.js?_=' + Date.now()).then(x => x.text()).then(shared => { - // find the main window - var win = electron.BrowserWindow.getAllWindows().filter(x => x.getURL().indexOf('monitor') == -1)[0]; + // the monitor gets node integration; no silly DiscordNative bullshit + var fs = require('original-fs'); + var electron = require('electron').remote; - // inject stage 2 once Discord is done loading - win.webContents.on('dom-ready', () => win.webContents.executeJavaScript(stage2)); + // find the main window + var win = electron.BrowserWindow.getAllWindows().filter(x => x.getURL().indexOf('monitor') == -1)[0]; - function load() { - win.loadURL('https://canary.discordapp.com/channels/@me'); - } + // inject stage 2 once Discord is done loading + win.webContents.on('dom-ready', () => { + win.webContents.executeJavaScript(stage2); + win.webContents.executeJavaScript(shared); + }); - // get the data path - var data = electron.app.getPath('userData'); + function load() { + win.loadURL('https://canary.discordapp.com/channels/@me'); + } - // dont update EPAPI if DONTUPDATE exists - if (!fs.existsSync(data + '/DONTUPDATE')) { + // get the data path + var data = electron.app.getPath('userData'); - // grab EPAPI from master - fetch('https://endpwn.github.io/epapi/epapi.js?_=' + Date.now()) - .then(r => r.text()) - .then(epapi => { - fs.writeFileSync(data + '/epapi.js', epapi); - setTimeout(load, 1000); - }); + // dont update EPAPI if DONTUPDATE exists + if (!fs.existsSync(data + '/DONTUPDATE')) { - } - else { - setTimeout(load, 1000); - } + // grab EPAPI from master + fetch('https://endpwn.github.io/epapi/epapi.js?_=' + Date.now()) + .then(r => r.text()) + .then(epapi => { + fs.writeFileSync(data + '/epapi.js', epapi); + setTimeout(load, 1000); + }); - }); + } + else { + setTimeout(load, 1000); + } + + }) + + ); } catch (e) { diff --git a/stage2.js b/stage2.js index ff81c19..185d927 100644 --- a/stage2.js +++ b/stage2.js @@ -29,61 +29,6 @@ return eval('(()=>{var exports={};' + fs.readFileSync(data + path, 'utf8').toString() + ';return exports})()'); } - // define this with a default value as a fallback - var __goodies = { - guilds: [], - bots: [], - users: {} - }; - - // fetch goodies.json - fetch('https://endpwn.cathoderay.tube/goodies.json?_=' + Date.now()) - .then(x => x.json()) - .then(r => __goodies = r); - - // EndPwn3 specific features - document.addEventListener('ep-ready', () => { - - window.reload = () => { app.relaunch(); app.exit(); }; - - // enable experiments - $api.util.findFuncExports('isDeveloper').__defineGetter__('isDeveloper', () => true); - - // disable that obnoxious warning about not pasting shit in the console - $api.util.findFuncExports('consoleWarning').consoleWarning = e => { }; - - // goodies for people directly associated with the endpwn project, and also kat bc shes my girlfriend - // may be expanded to anyone through a web ui later on - $api.util.wrapAfter( - "wc.findCache('getUser')[0].exports.getUser", - - x => { - - if (x === undefined || x === null) return; - - if (__goodies.bots.contains(x.id)) x.bot = true; - if (__goodies.users[x.id] !== undefined) x.discriminator = __goodies.users[x.id]; - - return x; - } - ); - - // verify servers directly associated with the endpwn project - $api.util.wrapAfter( - "wc.findCache('getGuild')[0].exports.getGuild", - - x => { - - if (x === undefined || x === null) return; - - if (__goodies.guilds.contains(x.id)) x.features.add('VERIFIED'); - - return x; - } - ); - - }); - // load EPAPI var epapi = __krequire('epapi.js');