aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/+admin/admin-guard.service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/app/+admin/admin-guard.service.ts')
-rw-r--r--client/src/app/+admin/admin-guard.service.ts23
1 files changed, 23 insertions, 0 deletions
diff --git a/client/src/app/+admin/admin-guard.service.ts b/client/src/app/+admin/admin-guard.service.ts
new file mode 100644
index 000000000..a0ad48175
--- /dev/null
+++ b/client/src/app/+admin/admin-guard.service.ts
@@ -0,0 +1,23 @@
1import { Injectable } from '@angular/core'
2import {
3 ActivatedRouteSnapshot,
4 CanActivateChild,
5 RouterStateSnapshot,
6 CanActivate
7} from '@angular/router'
8
9import { AuthService } from '../core'
10
11@Injectable()
12export class AdminGuard implements CanActivate, CanActivateChild {
13
14 constructor (private auth: AuthService) {}
15
16 canActivate (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
17 return this.auth.isAdmin()
18 }
19
20 canActivateChild (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
21 return this.canActivate(route, state)
22 }
23}