From 734e41c79e62691c026614d6ceef4f70c6703aa9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Robles?= Date: Fri, 6 Sep 2024 10:25:20 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20Login=20error=20for=20voters=20(?= =?UTF-8?q?#468)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Parent issue: https://github.com/sequentech/meta/issues/1832 --- avBooth/booth-directive/booth-directive.js | 24 ++++++++++++++-------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/avBooth/booth-directive/booth-directive.js b/avBooth/booth-directive/booth-directive.js index f50760ad..33556ea9 100644 --- a/avBooth/booth-directive/booth-directive.js +++ b/avBooth/booth-directive/booth-directive.js @@ -727,14 +727,10 @@ angular.module('avBooth') try { scope.credentials = JSON.parse(credentialsStr); - // if it's virtual, there's no current election credentials - if (scope.isVirtual) { - return; - } currentElectionCredentials = _.find( scope.credentials, function (electionCredential) { - return electionCredential.electionId.toString() === scope.electionId && !!electionCredential.token; + return (scope.isVirtual || electionCredential.electionId.toString() === scope.electionId) && !!electionCredential.token; } ); } catch (error) { @@ -747,6 +743,10 @@ angular.module('avBooth') ); return; } + // if it's virtual, there's no current election credentials + if (scope.isVirtual) { + return currentElectionCredentials; + } // credentials for current election should have been found if (!currentElectionCredentials) @@ -820,15 +820,21 @@ angular.module('avBooth') } function getSessionEndTime() { - readVoteCredentials(); - return scope.sessionEndsAtMs || scope.currentElectionCredentials && scope.currentElectionCredentials.sessionEndsAtMs || (scope.startTimeMs + ConfigService.authTokenExpirationSeconds * 1000); + let currentElectionCredentials = readVoteCredentials(); + return scope.sessionEndsAtMs || + (scope.currentElectionCredentials && scope.currentElectionCredentials.sessionEndsAtMs) || + (currentElectionCredentials && currentElectionCredentials.sessionEndsAtMs) || + (scope.startTimeMs + ConfigService.authTokenExpirationSeconds * 1000); } function getSessionStartTime(readCredentials) { + let currentElectionCredentials; if (readCredentials) { - readVoteCredentials(); + currentElectionCredentials = readVoteCredentials(); } - return scope.startTimeMs || (scope.currentElectionCredentials && scope.currentElectionCredentials.sessionStartedAtMs); + return (currentElectionCredentials && currentElectionCredentials.sessionStartedAtMs) || + (scope.currentElectionCredentials && scope.currentElectionCredentials.sessionStartedAtMs) || + scope.startTimeMs; } // After cookies expires, redirect to login. But only if cookies do