diff options
author | Chocobozzz <florian.bigard@gmail.com> | 2017-09-10 09:24:50 +0200 |
---|---|---|
committer | Chocobozzz <florian.bigard@gmail.com> | 2017-09-10 09:24:50 +0200 |
commit | 7ca86c864e102b65e4ff3224a06554a66148fef8 (patch) | |
tree | 8554b9069257d94cf567981140a0881b566d8b3d /client/src/app/+admin/admin-guard.service.ts | |
parent | 6599f096d5a26f2cc9624359d92cc501ec189586 (diff) | |
download | PeerTube-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.ts | 23 |
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 @@ | |||
1 | import { Injectable } from '@angular/core' | ||
2 | import { | ||
3 | ActivatedRouteSnapshot, | ||
4 | CanActivateChild, | ||
5 | RouterStateSnapshot, | ||
6 | CanActivate | ||
7 | } from '@angular/router' | ||
8 | |||
9 | import { AuthService } from '../core' | ||
10 | |||
11 | @Injectable() | ||
12 | export 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 | } | ||