diff --git a/src/lib/users/services/iqser-user.service.ts b/src/lib/users/services/iqser-user.service.ts index 6d7b545..651c10a 100644 --- a/src/lib/users/services/iqser-user.service.ts +++ b/src/lib/users/services/iqser-user.service.ts @@ -58,13 +58,13 @@ export abstract class IqserUserService< } async logout() { - await this._cacheApiService.wipeCaches(); - if (await this._keycloakService.isLoggedIn()) { + try { + await this._keycloakService.loadUserProfile(true); + await this._cacheApiService.wipeCaches(); await this._keycloakService.logout(); + } catch (e) { + await this.redirectToLogin(); } - window.location.href = this._keycloakService.getKeycloakInstance().createLoginUrl({ - redirectUri: window.location.origin + this._baseHref, - }); } async redirectToLogin() {