You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
RTL/src/app/shared/services/auth.guard.ts

46 lines
1.1 KiB
TypeScript

import { CanActivate } from '@angular/router';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import { SessionService } from './session.service';
@Injectable()
export class AuthGuard implements CanActivate {
constructor(private sessionService: SessionService) {}
canActivate(): boolean | Observable<boolean> | Promise<boolean> {
if (!this.sessionService.getItem('token')) {
return false;
} else {
return true;
}
}
}
@Injectable()
export class LNDUnlockedGuard implements CanActivate {
constructor(private sessionService: SessionService) {}
canActivate(): boolean | Observable<boolean> | Promise<boolean> {
if (!this.sessionService.getItem('lndUnlocked')) {
return false;
} else {
return true;
}
}
}
@Injectable()
export class CLUnlockedGuard implements CanActivate {
constructor(private sessionService: SessionService) {}
canActivate(): boolean | Observable<boolean> | Promise<boolean> {
return true;
if (!this.sessionService.getItem('clUnlocked')) {
return false;
} else {
return true;
}
}
}