diff --git a/src/app/modules/community/list-quiz/list-quiz.component.html b/src/app/modules/community/list-quiz/list-quiz.component.html index 9af4574521ec2a997e5ab42ed3906f872c18dc15..02719b8f6d16cd4d9f2b1a1e8b46fe3f6db7c4a7 100644 --- a/src/app/modules/community/list-quiz/list-quiz.component.html +++ b/src/app/modules/community/list-quiz/list-quiz.component.html @@ -2,12 +2,12 @@ <input (keyup)="filter()" [(ngModel)]="filterText" matInput type="text" placeholder="Search a quiz" /> <table mat-table [dataSource]="listQuizDataSource"> <ng-container matColumnDef="Component"> - <td mat-cell *matCellDef="let quiz" (click)="clickOnQuiz(quiz.codeQuiz)"> + <td mat-cell *matCellDef="let quiz" (click)="clickOnQuiz(quiz.id)"> <app-quiz-list-detail - [title]="quiz.title" - [nbQuestions]="quiz.nbQuestions" - [difficulty]="quiz.difficulty" - [creator]="quiz.creator" + [title]="quiz.id" + [nbQuestions]="quiz.questions.length" + [difficulty]="quiz.difficulty.name" + [creator]="quiz.author ?? 'Anonymous'" ></app-quiz-list-detail> </td> </ng-container> diff --git a/src/app/modules/community/list-quiz/list-quiz.component.ts b/src/app/modules/community/list-quiz/list-quiz.component.ts index fbaaf0f7c1825c134f3f152f670e51730fca8e52..5cf284d57c08ede65aa5c2ddd1a98a2d2833c129 100644 --- a/src/app/modules/community/list-quiz/list-quiz.component.ts +++ b/src/app/modules/community/list-quiz/list-quiz.component.ts @@ -30,13 +30,13 @@ export class ListQuizComponent implements OnInit { loadData() { this.communityService.getCommunityQuiz(this.skip, this.take, this.filterText).subscribe({ next: (data: any) => { - this.listQuizDataSource.data = data.body.quizzes; - this.totalQuiz = data.body.total; + console.log('data: ', data); + this.listQuizDataSource.data = data; + this.totalQuiz = data.length; }, }); } clickOnQuiz(codeQuiz: string) { - console.log('codeQuiz: ', codeQuiz); this.clickedQuiz = codeQuiz; } filter() { diff --git a/src/app/modules/community/quiz-detail/quiz-detail.component.ts b/src/app/modules/community/quiz-detail/quiz-detail.component.ts index d78921719bce73bcf66cca629d448dc268d5d023..acce12ed6c27308cdb68697d255e84e153ba1e4c 100644 --- a/src/app/modules/community/quiz-detail/quiz-detail.component.ts +++ b/src/app/modules/community/quiz-detail/quiz-detail.component.ts @@ -33,17 +33,17 @@ export class QuizDetailComponent implements OnInit, OnChanges { loadQuizData() { this.communityService.getQuizInformations(this.codeQuiz).subscribe({ next: (data: any) => { - this.title = data.body.title; - this.description = data.body.description; - this.nbQuestions = data.body.nbQuestions; - this.difficulty = data.body.difficulty; - this.nbPlayed = data.body.nbPlayed; - this.creator = data.body.creator; + this.title = data.name; + this.description = data.description; + this.nbQuestions = data.questions.length; + this.difficulty = data.difficulty.name; + this.nbPlayed = 12548; + this.creator = data.authorId ?? 'Anonymous'; }, }); this.showDetails = true; } playQuiz() { - this.router.navigate(['/play-quiz'], { queryParams: { code_quiz: this.codeQuiz } }); + this.router.navigate(['/play-quiz'], { queryParams: { idQuiz: this.codeQuiz } }); } } diff --git a/src/app/services/community.service.ts b/src/app/services/community.service.ts index 99bb447d1a3dcfdb5b941dcc00a24d8fa5a4ad17..37e35eaa02677b5ac32e9581314437b9723cc8dc 100644 --- a/src/app/services/community.service.ts +++ b/src/app/services/community.service.ts @@ -6,44 +6,12 @@ import { Observable, of } from 'rxjs'; providedIn: 'root', }) export class CommunityService { - private apiUrl = 'http://klebert-host.com:33036'; + private apiUrl = 'https://klebert-host.com:33037'; constructor(private http: HttpClient) {} getCommunityQuiz(skip: number, take: number, filter: string) { - //return this.http.get(`${this.apiUrl}/quiz/`, { params: { skip: skip, take: take, filter: filter } }); - return of({ - body: { - quizzes: [ - { - codeQuiz: 'AMSOE', - title: 'Titre du quiz', - nbQuestions: 20, - difficulty: 'hard', - creator: 'vexorit', - }, - { - codeQuiz: 'JFOSKZ', - title: 'Titre du quiz2', - nbQuestions: 28, - difficulty: 'easy', - creator: 'vexorit', - }, - ], - total: 2, - }, - }); + return this.http.get(`${this.apiUrl}/quiz/all`, { params: { skip: skip, take: take, filter: filter } }); } getQuizInformations(codeQuiz: string) { - //return this.http.get(`${this.apiUrl}/quiz/${codeQuiz}/short`); - return of({ - body: { - codeQuiz: 'AMSOE', - title: 'Titre du quiz', - description: 'Ceci est un quiz avec une description', - nbQuestions: 20, - nbPlayed: 18293, - difficulty: 'hard', - creator: 'vexorit', - }, - }); + return this.http.post(`${this.apiUrl}/quiz/remaining`, { id: codeQuiz }); } }