ngx-admin-lte
Version:
AdminLTE theme for angular
26 lines (22 loc) • 614 B
text/typescript
import { Injectable } from '@angular/core';
import { CanActivate, Router } from '@angular/router';
import { UserService } from './user.service';
()
export class CanActivateGuard implements CanActivate {
private connected = false;
constructor(
private router: Router,
private userService: UserService
) {
this.userService.getCurrent().subscribe((user) => {
this.connected = user.connected;
});
}
public canActivate() {
// test here if you user is logged
if ( !this.connected ) {
this.router.navigate( [ 'login' ] );
}
return this.connected;
}
}