diff --git a/src/app/app.component.html b/src/app/app.component.html index 6330d4c..a1a6042 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1,3 +1,3 @@ - + \ No newline at end of file diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 5ea1343..83adc50 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -2,45 +2,41 @@ import { Component } from '@angular/core'; import { RouterOutlet } from '@angular/router'; import { HttpClientModule } from '@angular/common/http'; -import { BookFormComponent } from './components/book-form/book-form.component'; -import { BookListComponent } from './components/book-list/book-list.component'; +import { LoginComponent } from './components/login/login.component'; import { UserService } from './services/user-service'; import { User } from './models/user.model'; -import { BookService } from './services/book-service'; -import { Book } from './models/book.model'; import { UserMenuComponent } from './components/user-menu/user-menu.component'; import { SudokuService } from "./services/sudoku-service" +import { UserAccueilComponent } from './components/user-accueil/user-accueil.component'; @Component({ selector: 'app-root', standalone: true, - imports: [RouterOutlet, BookListComponent, BookFormComponent, UserMenuComponent, HttpClientModule], + imports: [RouterOutlet, UserMenuComponent, HttpClientModule], templateUrl: './app.component.html', providers: [ - BookService, UserService, - SudokuService, + SudokuService ] }) export class AppComponent { title = 'angular-tp2-correct'; - constructor(protected bookService: BookService, protected userService: UserService, protected sudokuService: SudokuService){ } - - addBook($event: Book): void { - this.bookService.addBook($event); - } + constructor(protected userService: UserService, protected sudokuService: SudokuService){ } + changeUserName($event: User): void { + this.userService.addToLocalStorage($event); + } + onActivate(componentRef: Event): void { - console.log('onActivate', componentRef); - - if(componentRef instanceof BookFormComponent) { - componentRef.addBookEvent.subscribe((newBook: Book) => { - this.addBook(newBook); + if(componentRef instanceof LoginComponent) { + componentRef.addConnectEvent.subscribe((connectedUser: User) => { + this.changeUserName(connectedUser); }); } + } } diff --git a/src/app/app.routes.ts b/src/app/app.routes.ts index d824146..b9eca4d 100644 --- a/src/app/app.routes.ts +++ b/src/app/app.routes.ts @@ -1,7 +1,4 @@ import { Routes } from '@angular/router'; -import { BookListComponent } from './components/book-list/book-list.component'; -import { BookFormComponent } from './components/book-form/book-form.component'; -import { BookDetailComponent } from './components/book-detail/book-detail.component'; import { LoginComponent } from './components/login/login.component'; import { UserListComponent } from './components/user-list/user-list.component'; import { UserDetailComponent } from './components/user-detail/user-detail.component'; @@ -12,9 +9,6 @@ import { UserAccueilComponent } from './components/user-accueil/user-accueil.com export const routes: Routes = [ { path: '', component: LoginComponent }, { path: 'accueil', component: UserAccueilComponent }, - { path: 'books', component: BookListComponent }, - { path: 'book/add', component: BookFormComponent }, - { path: 'book/:id', component: BookDetailComponent }, { path: 'users', component: UserListComponent }, { path: 'user/:id', component: UserDetailComponent }, { path: 'sudoku', component: DifficultySelectorComponent }, diff --git a/src/app/components/book-detail/book-detail.component.html b/src/app/components/book-detail/book-detail.component.html deleted file mode 100644 index 8071deb..0000000 --- a/src/app/components/book-detail/book-detail.component.html +++ /dev/null @@ -1,12 +0,0 @@ -
-

{{selectedBook.title | uppercase}}

-
id: {{selectedBook.id}}
-
- - {{ selectedBook.author }} -
-
- - {{ selectedBook.publicationDate | date: 'EEEE d MMMM y' }} -
-
\ No newline at end of file diff --git a/src/app/components/book-detail/book-detail.component.ts b/src/app/components/book-detail/book-detail.component.ts deleted file mode 100644 index 20cf205..0000000 --- a/src/app/components/book-detail/book-detail.component.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Component} from '@angular/core'; -import { UpperCasePipe, DatePipe, NgIf} from '@angular/common'; -import { ActivatedRoute } from '@angular/router'; - -import { Book } from '../../models/book.model'; -import { BookService } from '../../services/book-service'; - -@Component({ - standalone: true, - selector: 'app-book-detail', - imports: [DatePipe, UpperCasePipe, NgIf], - templateUrl: './book-detail.component.html', - styles: `` -}) -export class BookDetailComponent { - selectedBook!: Book | undefined; - - constructor(protected bookService: BookService, private activatedRoute: ActivatedRoute) {} - - ngOnInit(){ - const id = this.activatedRoute.snapshot.params['id']; - this.selectedBook = this.bookService.getBookById(id); - console.log(this.selectedBook); - } -} \ No newline at end of file diff --git a/src/app/components/book-form/book-form.component.html b/src/app/components/book-form/book-form.component.html deleted file mode 100644 index ddf45e4..0000000 --- a/src/app/components/book-form/book-form.component.html +++ /dev/null @@ -1,32 +0,0 @@ -
-

Add book form

- -
-
- - Title - - -
- -
- - Author - - -
- -
- - Publication date - - - - -
- -
- -
-
-
\ No newline at end of file diff --git a/src/app/components/book-form/book-form.component.ts b/src/app/components/book-form/book-form.component.ts deleted file mode 100644 index 2cf99f6..0000000 --- a/src/app/components/book-form/book-form.component.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { Component, EventEmitter, Output } from '@angular/core'; - -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; -import { Book } from '../../models/book.model'; - -import { MatButtonModule } from '@angular/material/button'; -import { MatNativeDateModule } from '@angular/material/core'; -import { MatDatepickerModule } from '@angular/material/datepicker'; -import { MatFormFieldModule } from '@angular/material/form-field'; -import { MatInputModule } from '@angular/material/input'; -import { MatMenuModule } from '@angular/material/menu'; - -@Component({ - selector: 'app-book-form', - standalone: true, - imports: [ - MatFormFieldModule, - MatInputModule, - MatButtonModule, - MatMenuModule, - MatDatepickerModule, - MatNativeDateModule, - FormsModule, - ReactiveFormsModule - ], - templateUrl: './book-form.component.html' -}) -export class BookFormComponent { - @Output() addBookEvent = new EventEmitter(); - - book: Book = { id: 0, title: '', author: '', publicationDate: new Date() } - bookForm: FormGroup = new FormGroup({ - title: new FormControl(this.book.title, Validators.required), - author: new FormControl(this.book.author, Validators.required), - publicationDate: new FormControl(this.book.publicationDate, Validators.required) - }); - - addBook() { - if (this.bookForm.invalid) { - console.log("ERREUR"); - return; - } - - this.book = this.bookForm.value; - - this.addBookEvent.emit(this.book); - this.bookForm.reset(); - } -} \ No newline at end of file diff --git a/src/app/components/book-home/book-home.component.html b/src/app/components/book-home/book-home.component.html deleted file mode 100644 index c3a01ee..0000000 --- a/src/app/components/book-home/book-home.component.html +++ /dev/null @@ -1 +0,0 @@ -

Bienvenue sur la page d'accueil du Book Shop

diff --git a/src/app/components/book-home/book-home.component.ts b/src/app/components/book-home/book-home.component.ts deleted file mode 100644 index 2308417..0000000 --- a/src/app/components/book-home/book-home.component.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Component } from '@angular/core'; - -@Component({ - selector: 'app-book-home', - standalone: true, - imports: [], - templateUrl: './book-home.component.html', - styles: `` -}) -export class BookHomeComponent { - -} diff --git a/src/app/components/book-list/book-list.component.html b/src/app/components/book-list/book-list.component.html deleted file mode 100644 index 9965435..0000000 --- a/src/app/components/book-list/book-list.component.html +++ /dev/null @@ -1,7 +0,0 @@ -

Book list

- - \ No newline at end of file diff --git a/src/app/components/book-list/book-list.component.ts b/src/app/components/book-list/book-list.component.ts deleted file mode 100644 index 5804bc2..0000000 --- a/src/app/components/book-list/book-list.component.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Component } from '@angular/core'; -import { RouterModule } from '@angular/router'; -import { NgFor, DatePipe } from '@angular/common'; - -import { Book } from '../../models/book.model'; -import { BookService } from '../../services/book-service' - -@Component({ - selector: 'app-book-list', - standalone: true, - imports: [NgFor, DatePipe, RouterModule], - templateUrl: './book-list.component.html' -}) -export class BookListComponent { - books: Book[] = []; - - constructor(protected bookService: BookService){ - } - - ngOnInit(){ - this.books = this.bookService.getAll(); - } -} diff --git a/src/app/components/login/login.component.ts b/src/app/components/login/login.component.ts index d0e2fa3..a0e08da 100644 --- a/src/app/components/login/login.component.ts +++ b/src/app/components/login/login.component.ts @@ -1,4 +1,4 @@ -import { Component, EventEmitter, OnInit, Output, ViewChild } from '@angular/core'; +import { Component, EventEmitter, OnInit, Output } from '@angular/core'; import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; @@ -10,7 +10,6 @@ import { MatInputModule } from '@angular/material/input'; import { MatMenuModule } from '@angular/material/menu'; import { User } from '../../models/user.model'; import { NgIf } from '@angular/common'; -import { UserService } from '../../services/user-service'; import { Router } from '@angular/router'; @Component({ @@ -35,7 +34,6 @@ export class LoginComponent implements OnInit { @Output() addConnectEvent = new EventEmitter(); public isButtonVisible = false; - private UserService : UserService; user: User = {id:1, login: '', password: '', streak: null, streaks: [], points: null} loginForm: FormGroup = new FormGroup({ @@ -43,8 +41,7 @@ export class LoginComponent implements OnInit { password: new FormControl(this.user.password, Validators.required), }); - public constructor(us: UserService,private router: Router) { - this.UserService = us + public constructor(private router: Router) { } ngOnInit() { @@ -61,13 +58,10 @@ export class LoginComponent implements OnInit { console.log("ERREUR DIFFERENT"); return; } - console.log(this.loginForm.value.login) this.user = this.loginForm.value; - localStorage.setItem('UserConnecte',String(this.user.login)); - - //this.UserService.addUserToLocal(this.user); - this.addConnectEvent.emit(this.user) + + this.addConnectEvent.emit(this.loginForm.value) this.loginForm.reset(); this.isButtonVisible = false; this.router.navigate(['/accueil']); diff --git a/src/app/components/sudoku/sudoku.component.html b/src/app/components/sudoku/sudoku.component.html index 22bfb84..570952b 100644 --- a/src/app/components/sudoku/sudoku.component.html +++ b/src/app/components/sudoku/sudoku.component.html @@ -1,4 +1,4 @@ - +
@@ -34,7 +34,7 @@

Vous avez gagné !