From 1d0620122f7648495c65fc58d6309eb8ad65bffc Mon Sep 17 00:00:00 2001 From: Minteck Date: Mon, 6 Jun 2022 17:11:17 +0200 Subject: Initial commit --- index.js | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 index.js (limited to 'index.js') diff --git a/index.js b/index.js new file mode 100644 index 0000000..360f3ca --- /dev/null +++ b/index.js @@ -0,0 +1,75 @@ +// noinspection HttpUrlsUsage + +const { app, BrowserWindow, ipcMain } = require('electron'); + +const createWindow = () => { + global.mainWindow = new BrowserWindow({ + width: 1200, + height: 700, + title: "Bits", + fullscreenable: false, + backgroundColor: "#222", + webPreferences: { + nodeIntegration: true, + nodeIntegrationInSubFrames: true, + contextIsolation: false, + enableRemoteModule: true + } + }) + + mainWindow.loadFile('index.html') + mainWindow.menuBarVisible = false; +} + +process.on('uncaughtException', (error) => { + console.error(error); +}) + +app.whenReady().then(() => { + createWindow() +}) + +app.on('window-all-closed', () => { + app.quit() +}) + +global.authenticationSucceeded = false; + +ipcMain.on("login", () => { + const loginWindow = new BrowserWindow({ + width: 500, + height: 800, + parent: mainWindow, + title: "Bits", + show: false, + fullscreenable: false, + backgroundColor: "#fff", + webPreferences: { + nodeIntegration: false, + nodeIntegrationInSubFrames: false, + contextIsolation: true, + enableRemoteModule: false + } + }); + + global.authenticationCheckInterval = setInterval(() => { + let url = loginWindow.webContents.getURL(); + + if (url.startsWith("https://account.minteck.org") || url.includes("Disallowed")) { + loginWindow.show(); + } + + if (url === "https://money.equestria.dev/Authentication/Success/") { + clearInterval(authenticationCheckInterval); + global.authenticationSucceeded = true; + loginWindow.close(); + mainWindow.webContents.reload(); + } + }, 100); + + loginWindow.on('close', () => { + if (!authenticationSucceeded) mainWindow.close(); + }) + + loginWindow.loadURL("https://money.equestria.dev/Authentication/Start"); +}) \ No newline at end of file -- cgit