This commit is contained in:
Bastian Wagner
2024-09-13 22:20:27 +02:00
parent 00d5498e00
commit ed6b2b9c45
11 changed files with 70 additions and 18 deletions

View File

@@ -17,7 +17,7 @@ export class AuthService {
private router: Router = inject(Router);
private toast: HotToastService = inject(HotToastService);
private user: IUser | null = null;
private _user: IUser | null = null;
constructor() {
const token = localStorage.getItem('accessToken_vault');
@@ -27,6 +27,14 @@ export class AuthService {
this.refreshToken = refresh;
}
get user(): IUser {
return this._user!;
}
get isAdmin(): boolean {
console.log(this.user, this.user.role == 'admin')
return this.user != null && this.user.role == 'admin';
}
getMe() {
if (!this.getAccessToken()) {
@@ -35,7 +43,7 @@ export class AuthService {
return new Promise(resolve => {
this.http.get<IUser>('/api/auth/me').subscribe({
next: user => {
this.user = user;
this._user = user;
resolve(true)
},
error: () => {
@@ -51,7 +59,7 @@ export class AuthService {
this.http.post<IUser>('/api/auth/auth-code', { code: authcode }).subscribe({
next: user => {
this.setTokens({ accessToken: user.accessToken, refreshToken: user.refreshToken});
this.user = user;
this._user = user;
return resolve(true)
},
error: () => {
@@ -63,7 +71,7 @@ export class AuthService {
}
get authenticated(): boolean {
return this.user != null;
return this._user != null;
}