@@ -9,6 +9,9 @@ import { EnvironmentType } from 'src/environments/enum';
99import { User } from '../../models/users' ;
1010import { LoadUsers , UserActionTypes , AddUserToGroup , RemoveUserFromGroup } from '../../store/user.actions' ;
1111import { getIsLoading } from '../../store/user.selectors' ;
12+ import { UserInfoService } from 'src/app/modules/user/services/user-info.service' ;
13+ import { LoginService } from '../../../login/services/login.service' ;
14+ import { JwtHelperService } from '@auth0/angular-jwt' ;
1215
1316@Component ( {
1417 selector : 'app-users-list' ,
@@ -28,13 +31,15 @@ export class UsersListComponent implements OnInit, OnDestroy, AfterViewInit {
2831 } ;
2932 switchGroupsSubscription : Subscription ;
3033 isDevelopmentOrProd = true ;
34+ helper : JwtHelperService ;
3135
3236 public get ROLES ( ) {
3337 return ROLES ;
3438 }
3539
36- constructor ( private store : Store < User > , private actionsSubject$ : ActionsSubject ) {
40+ constructor ( private store : Store < User > , private actionsSubject$ : ActionsSubject , private userInfoService : UserInfoService , private loginService : LoginService ) {
3741 this . isLoading$ = store . pipe ( delay ( 0 ) , select ( getIsLoading ) ) ;
42+ this . helper = new JwtHelperService ( ) ;
3843 }
3944
4045 ngOnInit ( ) : void {
@@ -94,4 +99,11 @@ export class UsersListComponent implements OnInit, OnDestroy, AfterViewInit {
9499 )
95100 ) ;
96101 }
102+
103+ checkRoleCurrentUser ( userEmail : string ) {
104+ const token = this . loginService . getLocalStorage ( 'user' ) ;
105+ const user = this . helper . decodeToken ( token ) ;
106+ return this . userInfoService . isAdmin ( ) && ( userEmail === user . email ) ;
107+ }
108+
97109}
0 commit comments