Fixing the web app with missing permissions

This commit is contained in:
Zoe Roux 2021-05-07 23:13:21 +02:00
parent da35a725a3
commit 6802bc11e6
2 changed files with 14 additions and 2 deletions

View File

@ -95,7 +95,7 @@ export class AuthModule
{
constructor(http: HttpClient)
{
AuthGuard.permissionsObservable = http.get<string[]>("/api/account/default-permissions")
AuthGuard.permissionsObservable = http.get<string[]>("/api/account/permissions")
.pipe(tap(x => AuthGuard.defaultPermissions = x));
}
}

View File

@ -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))