aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/+admin/admin-guard.service.ts
diff options
context:
space:
mode:
authorChocobozzz <florian.bigard@gmail.com>2017-09-10 09:24:50 +0200
committerChocobozzz <florian.bigard@gmail.com>2017-09-10 09:24:50 +0200
commit7ca86c864e102b65e4ff3224a06554a66148fef8 (patch)
tree8554b9069257d94cf567981140a0881b566d8b3d /client/src/app/+admin/admin-guard.service.ts
parent6599f096d5a26f2cc9624359d92cc501ec189586 (diff)
downloadPeerTube-7ca86c864e102b65e4ff3224a06554a66148fef8.tar.gz
PeerTube-7ca86c864e102b65e4ff3224a06554a66148fef8.tar.zst
PeerTube-7ca86c864e102b65e4ff3224a06554a66148fef8.zip
Client: add guard to admin routes
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}