From 9bebe9dee775d802c5b31fd390bd735d34399e0a Mon Sep 17 00:00:00 2001 From: Chaim Lev Ari Date: Wed, 2 Jan 2019 20:01:23 +0200 Subject: [PATCH] refactor(auth): move user setter into function --- app/portainer/services/authentication.js | 37 +++++++++++------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/app/portainer/services/authentication.js b/app/portainer/services/authentication.js index b6b9c8071..7b334e10e 100644 --- a/app/portainer/services/authentication.js +++ b/app/portainer/services/authentication.js @@ -18,33 +18,22 @@ function AuthenticationFactory(Auth, OAuth, jwtHelper, LocalStorage, StateManage var jwt = LocalStorage.getJWT(); if (jwt) { - var tokenPayload = jwtHelper.decodeToken(jwt); - user.username = tokenPayload.username; - user.ID = tokenPayload.id; - user.role = tokenPayload.role; + setUser(jwt); } } function oAuthLogin(code) { - return OAuth.login({code: code}).$promise - .then(function success(data) { - LocalStorage.storeJWT(data.jwt); - var tokenPayload = jwtHelper.decodeToken(data.jwt); - user.username = tokenPayload.username; - user.ID = tokenPayload.id; - user.role = tokenPayload.role; - }); + return OAuth.login({ code: code }).$promise + .then(function onLoginSuccess(response) { + return setUser(response.jwt); + }); } function login(username, password) { - return Auth.login({username: username, password: password}).$promise - .then(function success(data) { - LocalStorage.storeJWT(data.jwt); - var tokenPayload = jwtHelper.decodeToken(data.jwt); - user.username = username; - user.ID = tokenPayload.id; - user.role = tokenPayload.role; - }); + return Auth.login({ username: username, password: password }).$promise + .then(function onLoginSuccess(response) { + return setUser(response.jwt); + }); } function logout() { @@ -62,5 +51,13 @@ function AuthenticationFactory(Auth, OAuth, jwtHelper, LocalStorage, StateManage return user; } + function setUser(jwt) { + LocalStorage.storeJWT(jwt); + var tokenPayload = jwtHelper.decodeToken(jwt); + user.username = tokenPayload.username; + user.ID = tokenPayload.id; + user.role = tokenPayload.role; + } + return service; }]);