Updated hasRoleGuard
This commit is contained in:
parent
54d60b6c97
commit
6eef9aba4b
@ -1,9 +1,10 @@
|
||||
import { CanActivateFn, Router } from '@angular/router';
|
||||
import { Router } from '@angular/router';
|
||||
import { inject } from '@angular/core';
|
||||
import { IqserUserService } from '../services/iqser-user.service';
|
||||
import { TenantsService } from '../../tenants';
|
||||
import { AsyncGuard } from '../../services';
|
||||
|
||||
export function hasAnyRoleGuard(): CanActivateFn {
|
||||
export function doesNotHaveAnyRoleGuard(): AsyncGuard {
|
||||
return async () => {
|
||||
const router = inject(Router);
|
||||
const activeTenantId = inject(TenantsService).activeTenantId;
|
||||
@ -15,3 +16,16 @@ export function hasAnyRoleGuard(): CanActivateFn {
|
||||
return true;
|
||||
};
|
||||
}
|
||||
|
||||
export function hasAnyRoleGuard(): AsyncGuard {
|
||||
return async () => {
|
||||
const router = inject(Router);
|
||||
const activeTenantId = inject(TenantsService).activeTenantId;
|
||||
const user = await inject(IqserUserService).loadCurrentUser();
|
||||
if (!user?.hasAnyRole) {
|
||||
await router.navigate([`/${activeTenantId}/auth-error`]);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user