From 6802bc11e66331f0e77d7604838c8f1c219bef99 Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Fri, 7 May 2021 23:13:21 +0200 Subject: [PATCH] Fixing the web app with missing permissions --- src/app/auth/auth.module.ts | 2 +- src/app/auth/misc/authenticated-guard.service.ts | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/app/auth/auth.module.ts b/src/app/auth/auth.module.ts index 947caf84..51c7fcc6 100644 --- a/src/app/auth/auth.module.ts +++ b/src/app/auth/auth.module.ts @@ -95,7 +95,7 @@ export class AuthModule { constructor(http: HttpClient) { - AuthGuard.permissionsObservable = http.get("/api/account/default-permissions") + AuthGuard.permissionsObservable = http.get("/api/account/permissions") .pipe(tap(x => AuthGuard.defaultPermissions = x)); } } diff --git a/src/app/auth/misc/authenticated-guard.service.ts b/src/app/auth/misc/authenticated-guard.service.ts index eb8adbb2..f216cae5 100644 --- a/src/app/auth/misc/authenticated-guard.service.ts +++ b/src/app/auth/misc/authenticated-guard.service.ts @@ -50,8 +50,20 @@ export class AuthGuard } else { + if (AuthGuard.defaultPermissions === undefined) + { + try + { + await AuthGuard.permissionsObservable.toPromise(); + } + catch + { + AuthGuard.defaultPermissions = null; + } + } + if (!AuthGuard.defaultPermissions) - await AuthGuard.permissionsObservable.toPromise(); + return true; for (const perm of permissions) if (!AuthGuard.defaultPermissions.includes(perm))