From 941d2f1c00e7d0ba3187bc310bb01c9323588b3f Mon Sep 17 00:00:00 2001 From: ConnerWithAnE Date: Mon, 3 Jun 2024 15:26:49 -0600 Subject: [PATCH] fix: threshold was not being properly computed, proxy properly checks if login token exists within login call. --- src/widgets/wgeasy/component.jsx | 2 +- src/widgets/wgeasy/proxy.js | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/widgets/wgeasy/component.jsx b/src/widgets/wgeasy/component.jsx index 0289d48c..624002c4 100644 --- a/src/widgets/wgeasy/component.jsx +++ b/src/widgets/wgeasy/component.jsx @@ -28,7 +28,7 @@ export default function Component({ service }) { const enabled = infoData.filter((item) => item.enabled).length; const disabled = infoData.length - enabled; - const connectionThreshold = widget.threshold ?? 2 * 60 * 1000; + const connectionThreshold = (widget.threshold ?? 2) * 60 * 1000; const currentTime = new Date(); const connected = infoData.filter( (item) => currentTime - new Date(item.latestHandshakeAt) < connectionThreshold, diff --git a/src/widgets/wgeasy/proxy.js b/src/widgets/wgeasy/proxy.js index ec733475..63cc2309 100644 --- a/src/widgets/wgeasy/proxy.js +++ b/src/widgets/wgeasy/proxy.js @@ -21,6 +21,10 @@ async function login(widget, service) { }); try { + const sid = cache.get(`${sessionSIDCacheKey}.${service}`); + if (sid) { + return sid; + } const connectSidCookie = responseHeaders["set-cookie"] .find((cookie) => cookie.startsWith("connect.sid=")) .split(";")[0] @@ -28,7 +32,7 @@ async function login(widget, service) { cache.put(`${sessionSIDCacheKey}.${service}`, connectSidCookie); return connectSidCookie; } catch (e) { - logger.error(`Error logging into wg-easy`); + logger.error(`Error logging into wg-easy, error: ${e}`); cache.del(`${sessionSIDCacheKey}.${service}`); return null; }