diff options
author | kali kaneko (leap communications) <kali@leap.se> | 2021-06-01 11:28:34 +0200 |
---|---|---|
committer | kali kaneko (leap communications) <kali@leap.se> | 2021-06-01 12:34:08 +0200 |
commit | 00d9cdd235f8be27780a742d84eb22ce2c89f759 (patch) | |
tree | 807f7fed1f0c3bdba2957f7fbb6410c970282289 | |
parent | 3fdbb895b8372caa080044cade00f2de6b00ce91 (diff) |
[refactor] move logic to js file
-rw-r--r-- | gui/qml/logic.js | 31 | ||||
-rw-r--r-- | gui/qml/main.qml | 39 |
2 files changed, 36 insertions, 34 deletions
diff --git a/gui/qml/logic.js b/gui/qml/logic.js index 4fdbb99..582b824 100644 --- a/gui/qml/logic.js +++ b/gui/qml/logic.js @@ -34,6 +34,35 @@ function toHuman(st) { case "failed": //: %1 -> application name return qsTr("%1 blocking internet").arg( - ctx.appName) // TODO failed is not handed yet + ctx.appName) // TODO failed is not handled yet } } + +// Helper to show notification messages +function showNotification(ctx, msg) { + console.log("Going to show notification message: ", msg) + if (supportsMessages) { + let appname = ctx ? ctx.appName : "VPN" + showMessage(appname, msg, null, 15000) + } else { + console.log("System doesn't support systray notifications") + } +} + +function shouldAllowEmptyPass(providers) { + let obj = JSON.parse(providers.getJson()) + let active = obj['default'] + let allProviders = obj['providers'] + for (var i = 0; i < allProviders.length; i++) { + if (allProviders[i]['name'] === active) { + return (allProviders[i]['authEmptyPass'] === 'true') + } + } + return false +} + +function debugInit() { + console.debug("Platform:", Qt.platform.os) + console.debug("DEBUG: Pre-seeded providers:") + console.debug(providers.getJson()) +} diff --git a/gui/qml/main.qml b/gui/qml/main.qml index cef3344..daffda2 100644 --- a/gui/qml/main.qml +++ b/gui/qml/main.qml @@ -241,18 +241,6 @@ ApplicationWindow { initFailure.visible = true } - function shouldAllowEmptyPass() { - let obj = JSON.parse(providers.getJson()) - let active = obj['default'] - let allProviders = obj['providers'] - for (var i = 0; i < allProviders.length; i++) { - if (allProviders[i]['name'] === active) { - return (allProviders[i]['authEmptyPass'] === 'true') - } - } - return false - } - function isManualLocation() { if (!ctx) { return false @@ -264,7 +252,6 @@ ApplicationWindow { if (!ctx.currentLocation) { return } - const location = ctx.currentLocation.toLowerCase() const idx = gwSelector.model.indexOf(location) gwSelector.currentIndex = idx @@ -272,13 +259,10 @@ ApplicationWindow { } Component.onCompleted: { + Logic.debugInit() loginDone = false - console.debug("Platform:", Qt.platform.os) - console.debug("DEBUG: Pre-seeded providers:") - console.debug(providers.getJson()) - allowEmptyPass = shouldAllowEmptyPass() + allowEmptyPass = Logic.shouldAllowEmptyPass(providers) needsRestart = false; - /* TODO get appVisible flag from backend */ app.visible = true app.raise() @@ -441,24 +425,13 @@ ApplicationWindow { console.log("show systray") if (Qt.platform.os === "windows") { let appname = ctx ? ctx.appName : "VPN" - showNotification( - appname - + " is up and running. Please use system tray icon to control it.") + Logic.showNotification( + ctx, + appname + + " is up and running. Please use system tray icon to control it.") } } } - - // TODO move to logic, pass ctx - // Helper to show notification messages - function showNotification(msg) { - console.log("Going to show notification message: ", msg) - if (supportsMessages) { - let appname = ctx ? ctx.appName : "VPN" - showMessage(appname, msg, null, 15000) - } else { - console.log("System doesn't support systray notifications") - } - } } DonateDialog { |