From 28a2ffdaca07d41eb61bb9cac33c5530b81f8105 Mon Sep 17 00:00:00 2001 From: mrfry Date: Sat, 6 May 2023 11:35:31 +0200 Subject: [PATCH] peer selector improvements --- stable.user.js | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/stable.user.js b/stable.user.js index 4a568ad..c4edc85 100755 --- a/stable.user.js +++ b/stable.user.js @@ -105,6 +105,7 @@ const motdShowCount = 5 // Ammount of times to show motd let infoExpireTime = 60 * 5 // Every n seconds basic info should be (re)loaded from server let p2pInfoExpireTime = 60 * 60 * 24 + let loggedIn = false const messageOpacityDelta = 0.1 const minMessageOpacity = 0.2 @@ -1686,6 +1687,7 @@ NoUserAction() return } + loggedIn = true lastestVersion = inf.version.replace(/\n/g, '') motd = inf.motd if (getUid() !== inf.uid) { @@ -1780,7 +1782,10 @@ return getPeerUrl(x) === getPeerUrl(peer) }) if (!peerAlreadyExists) { - setVal('peers', JSON.stringify([peer, ...peers])) + setJSONVal('peers', [peer, ...peers]) + SafeGetElementById('peerSelector', (elem) => { + updatePeerSelector(elem) + }) } } @@ -1851,6 +1856,7 @@ SafeGetElementById('peerSelector', (elem) => { elem.style.display = '' }) + loggedIn = false } function addNewHost() { @@ -1872,6 +1878,9 @@ SafeGetElementById('hostInputContainer', (elem) => { elem.style.display = 'flex' }) + SafeGetElementById('loginDiv', (elem) => { + elem.style.display = 'none' + }) } function addHost(val) { @@ -2786,7 +2795,7 @@ margin: '4px 0px', }) - const peers = getJSONVal('peers') + const peers = getJSONVal('peers') || [] peers.forEach((peer, i) => { const option = document.createElement('option') @@ -2853,8 +2862,6 @@ resetMenu() SafeGetElementById('peerSelector', (elem) => { elem.style.display = '' - }) - SafeGetElementById('peerSelector', (elem) => { updatePeerSelector(elem) }) SafeGetElementById('infoMainDiv', (elem) => { @@ -2862,6 +2869,9 @@ elem.innerText = `${subjInfo.subjects.toLocaleString()} tárgy, ${subjInfo.questions.toLocaleString()} kérdés` } }) + if (!loggedIn) { + NoUserAction() + } }, }, connectButton: { @@ -2937,9 +2947,6 @@ function updatePeerSelector(selector) { try { const peers = getJSONVal('peers') - if (serverToUse) { - peers.push(serverToUse) - } const selectedPeer = getJSONVal('serverToUse') const selectedIndex = peers.findIndex((x) => {