diff --git a/frontend/src/app/app.component.ts b/frontend/src/app/app.component.ts index ad717f4..771c2c7 100644 --- a/frontend/src/app/app.component.ts +++ b/frontend/src/app/app.component.ts @@ -21,7 +21,7 @@ export class AppComponent implements OnInit { ); menu: MenuItem[] = [ - {path: 'subjects', title: 'Tárgyak', requiredRole: 'admin'} + {path: 'users', title: 'Felhasználók', requiredRole: 'admin'} ]; constructor(private breakpointObserver: BreakpointObserver, public loginService: LoginService, private api: ApiService, diff --git a/frontend/src/app/auth/login.service.ts b/frontend/src/app/auth/login.service.ts index 2d8b1ff..7ea81e1 100644 --- a/frontend/src/app/auth/login.service.ts +++ b/frontend/src/app/auth/login.service.ts @@ -1,7 +1,7 @@ -import {Injectable} from '@angular/core'; -import {HttpClient} from '@angular/common/http'; -import {environment} from '../../environments/environment'; -import {User} from '../model/user.model'; +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { environment } from '../../environments/environment'; +import { User } from '../model/user.model'; @Injectable({ providedIn: 'root' @@ -12,6 +12,8 @@ export class LoginService { user: User; constructor(private http: HttpClient) { + this.token = window.localStorage.getItem('token'); + this.user = JSON.parse(window.localStorage.getItem('user')); } async createUser(email: string, password: string, name: string): Promise { @@ -20,9 +22,14 @@ export class LoginService { async login(email: string, password: string): Promise { try { - const resp: any = await this.http.post(environment.backendUrl + '/users/login', {email, password}).toPromise(); + const resp = await this.http.post<{ token: string, user: User }>(environment.backendUrl + '/users/login', { + email, + password + }).toPromise(); this.token = resp.token; this.user = resp.user; + window.localStorage.setItem('token', resp.token); + window.localStorage.setItem('user', JSON.stringify(resp.user)); return true; } catch (e) { if (e.status === 401 || e.status === 422) { diff --git a/frontend/src/app/users/users.module.ts b/frontend/src/app/users/users.module.ts index 113a6de..26abf32 100644 --- a/frontend/src/app/users/users.module.ts +++ b/frontend/src/app/users/users.module.ts @@ -1,13 +1,17 @@ import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { UserListComponent } from './user-list/user-list.component'; +import { RouterModule, Routes } from '@angular/router'; - +const routes: Routes = [ + {path: '', component: UserListComponent} +]; @NgModule({ declarations: [UserListComponent], imports: [ - CommonModule + CommonModule, + RouterModule.forChild(routes) ] }) export class UsersModule { }