1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-28 14:13:22 +00:00

token refresh

This commit is contained in:
Kyle Spearrin
2017-01-28 16:09:38 -05:00
parent a20e8b6228
commit e674e7287e
3 changed files with 42 additions and 18 deletions

View File

@@ -1,7 +1,7 @@
angular
.module('bit.services')
.factory('tokenService', function ($sessionStorage) {
.factory('tokenService', function ($sessionStorage, jwtHelper) {
var _service = {},
_token = null,
_refreshToken = null;
@@ -42,5 +42,22 @@ angular
delete $sessionStorage.refreshToken;
};
_service.tokenSecondsRemaining = function (token, offsetSeconds) {
var d = jwtHelper.getTokenExpirationDate(token);
offsetSeconds = offsetSeconds || 0;
if (d === null) {
return 0;
}
var msRemaining = d.valueOf() - (new Date().valueOf() + (offsetSeconds * 1000));
return Math.round(msRemaining / 1000);
};
_service.tokenNeedsRefresh = function (token, minutes) {
minutes = minutes || 5; // default 5 minutes
var sRemaining = _service.tokenSecondsRemaining(token);
return sRemaining < (60 * minutes);
};
return _service;
});