From 460026bad4ddc15b6f9a2b9013fb04fbbfc8d5eb Mon Sep 17 00:00:00 2001 From: FORESTIER Fabien <fabien.forestier@soprasteria.com> Date: Fri, 11 Oct 2019 14:17:29 +0200 Subject: [PATCH] Prevent user to think they are authenticated while their token is expired --- src/app/app.module.ts | 9 +++++---- src/app/user/services/user.service.ts | 6 +++++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/app/app.module.ts b/src/app/app.module.ts index 9ee494f7..db66563e 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -46,16 +46,17 @@ export function initAppConfig(appConfigService: AppConfigService) { Angulartics2Module.forRoot(), ], providers: [ + // The order is important as the InitUserService require the configuration of the app { provide: APP_INITIALIZER, - useFactory: initUserService, - deps: [UserService], + useFactory: initAppConfig, + deps: [AppConfigService], multi: true, }, { provide: APP_INITIALIZER, - useFactory: initAppConfig, - deps: [AppConfigService], + useFactory: initUserService, + deps: [UserService], multi: true, }, ], diff --git a/src/app/user/services/user.service.ts b/src/app/user/services/user.service.ts index 129942e3..93882aae 100644 --- a/src/app/user/services/user.service.ts +++ b/src/app/user/services/user.service.ts @@ -42,7 +42,11 @@ export class UserService { setUserInfo() { const userInfo = JSON.parse(localStorage.getItem('userInfo')); if (userInfo) { - this._user = new User(userInfo); + if (userInfo.exp > Date.now()) { + this._user = new User(userInfo); + } else { + this.resetAuth(); + } } } -- GitLab