20 lines
604 B
TypeScript
20 lines
604 B
TypeScript
import { inject } from '@angular/core';
|
|
import { ActivatedRouteSnapshot, CanActivateFn, Router, RouterStateSnapshot } from '@angular/router';
|
|
import { ContextService } from 'shared-meet-components';
|
|
|
|
export const checkRoomCreatorEnabledGuard: CanActivateFn = async (
|
|
_route: ActivatedRouteSnapshot,
|
|
_state: RouterStateSnapshot
|
|
) => {
|
|
const contextService = inject(ContextService);
|
|
const router = inject(Router);
|
|
|
|
const isRoomCreatorEnabled = await contextService.canUsersCreateRooms();
|
|
if (!isRoomCreatorEnabled) {
|
|
router.navigate(['room-creator-disabled']);
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
};
|