aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/app/_services/auth-guard.service.ts
diff options
context:
space:
mode:
authorDanijel Andjelkovic <adanijel99@gmail.com>2022-03-07 18:29:12 +0100
committerDanijel Andjelkovic <adanijel99@gmail.com>2022-03-07 18:29:12 +0100
commitc59ff03b96d7b638623c254dfe8477055aeb2a35 (patch)
tree933ffdbf0e0d4300424d73c11bbcc8156851a71c /frontend/src/app/_services/auth-guard.service.ts
parent9b925712cbdedacdf8af947e929ca3975b56e3fa (diff)
parentcd2188997ff4cbcce83e3cada3fc220375ebc78e (diff)
Merge branch 'frontendLoginRegister' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into frontend
# Conflicts: # frontend/package-lock.json # frontend/package.json
Diffstat (limited to 'frontend/src/app/_services/auth-guard.service.ts')
-rw-r--r--frontend/src/app/_services/auth-guard.service.ts21
1 files changed, 21 insertions, 0 deletions
diff --git a/frontend/src/app/_services/auth-guard.service.ts b/frontend/src/app/_services/auth-guard.service.ts
new file mode 100644
index 00000000..b6d3678d
--- /dev/null
+++ b/frontend/src/app/_services/auth-guard.service.ts
@@ -0,0 +1,21 @@
+import { Injectable } from '@angular/core';
+import { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot, UrlTree } from '@angular/router';
+import { Observable } from 'rxjs';
+import { AuthService } from './auth.service';
+
+
+@Injectable({
+ providedIn: 'root'
+})
+export class AuthGuardService implements CanActivate {
+
+ constructor(private auth: AuthService, private router: Router) { }
+
+ canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | UrlTree | Observable<boolean | UrlTree> | Promise<boolean | UrlTree> {
+ if (this.auth.isAuthenticated()) {
+ return true;
+ }
+ this.router.navigate(['login']);
+ return false;
+ }
+}