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