Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save brachi-wernick/22194dec8dae0e3d257339fc7edb3b06 to your computer and use it in GitHub Desktop.
Save brachi-wernick/22194dec8dae0e3d257339fc7edb3b06 to your computer and use it in GitHub Desktop.
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean {
if (route.component && route.data) {
let permissions = route.component[ACTIVATE_FIELD_NAME] as ActivateMetadata;
if (permissions) {
return this.securityService.userHasPermissions(permissions)
.map(hasAccess => {
if (hasAccess) {
return true;
}
else {
this.router.navigate(['/unauthorized'], {replaceUrl: true})
}
})
}
}
return true;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment