Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

define(['angular', 'app'], function (angular, app) {
"use strict";
app.service('userSession', function ($http, $q, localResourceDirectoryService) {

var userSession = {},
isReady;

userSession.fetch = function () {

if (isReady) {
return isReady.promise;
}

isReady = $q.defer();

$q.all([localResourceDirectoryService.fetch()]).then(
function (directory) {
$http.get(directory[0]['public-user-session']).success(function (response) {
response['siteCode'] = userSession.getCookie("vamfvistaid_v1");
angular.extend(userSession, response);
isReady.resolve(response);
}).error(function (error) {
isReady.reject(error);
isReady = null;
});
},
function (error) {
isReady.reject(error);
isReady = null;
}
);

return isReady.promise;
};

// Taken from: https://www.w3schools.com/js/js_cookies.asp
userSession.getCookie = function(cname) {
var name = cname + '=';
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
var i;
var c;

for (i = 0; i < ca.length; i++) {
c = ca[i];
while (c.charAt(0) === ' ') {
c = c.substring(1);
}
if (c.indexOf(name) === 0) {
return c.substring(name.length, c.length);
}
}
return null;
};

userSession.refreshSession = function() {
var deferred = $q.defer();

$q.all([localResourceDirectoryService.fetch()]).then(
function (directory) {
$http.get(directory[0]['jwt-refresh']).success(function (response) {
deferred.resolve();
});
}
);

return deferred.promise;
};

return userSession;
});
});