//--------ILL Signin Order - if logged out --------------------------------------- angular .module('epflIllSigninOrderLoggedOut', []) .service('userService', ['jwtHelper', function (jwtHelper) { this.get_ip = function() { var jwt = sessionStorage.getItem('primoExploreJwt'); if (!jwt) { return; } return jwtHelper.decodeToken(jwt).userIp; } this.isGuest = function () { var jwt = sessionStorage.getItem('primoExploreJwt'); if (!jwt) { return true; } var decodedToken = jwtHelper.decodeToken(jwt); let userName = decodedToken.userGroup !== 'GUEST' ? decodedToken.userName : ''; if (userName) { return false } else { return true; } } /* ---------------------------------- */ /* - Ajout pour vérifier si IP EPFL - */ this.isEpflIP = function () { var jwt = sessionStorage.getItem('primoExploreJwt'); if (!jwt) { return; } const userIP = jwtHelper.decodeToken(jwt).userIp; if (userIP) { const regex = /128\.17([89])\.(\d{1,3})\./; const found = userIP.match(regex); if (found && (found[1] == '8' || parseInt(found[2])>=128)) { return true; } } return false; } /* --------- Fin de l'ajout --------- */ /* ---------------------------------- */ }]) .controller('IllBoxController', ['$scope', 'userService', function ($scope, userService) { $scope.usrNme = userService.isGuest(); if ($scope.usrNme == true) { var myEl = angular.element(document.querySelector('primo-explore')); return myEl.addClass('logged-out') } else { var myEl = angular.element(document.querySelector('primo-explore')); return myEl.removeClass('logged-out'); } }]) .component('prmUserAreaExpandableAfter', { bindings: { parentCtrl: '<' }, controller: 'IllBoxController', template: '' });