diff --git a/AngularApp/src/app/exercise-student/exercise-student.component.ts b/AngularApp/src/app/exercise-student/exercise-student.component.ts index cccdd5f666fbc5db1e8c2939d7a9f77ba7455ca0..12854db3cf38bd4f3f1ce66c7658572d53f3a650 100644 --- a/AngularApp/src/app/exercise-student/exercise-student.component.ts +++ b/AngularApp/src/app/exercise-student/exercise-student.component.ts @@ -18,18 +18,6 @@ export class ExerciseStudentComponent implements OnInit { 'language' ]; - dataAssignment : Assignment [] = [ - // { - // title: 'TCP', - // description: 'Technique de compilation', - // language: 'Java' - // }, - // { - // title: 'Virtualisation', - // description: 'Comprehension des VM', - // language: 'C' - // }, - ]; displayedColumns: string[] = [ 'id', @@ -163,7 +151,7 @@ export class ExerciseStudentComponent implements OnInit { dataSource = new MatTableDataSource(this.EmpData); dataSourceFilters = new MatTableDataSource(this.EmpData); - dataSourceAssignment = new MatTableDataSource(this.dataAssignment); + // dataSourceAssignment = new MatTableDataSource(this.dataAssignment); constructor() {} @@ -184,7 +172,7 @@ export class ExerciseStudentComponent implements OnInit { defaultValue: this.defaultValue, }); - this.assignmentFilter = this.dataAssignment; + // this.assignmentFilter = this.dataAssignment; this.dataSourceFilters.filterPredicate = function (record, filter) { debugger; var map = new Map(JSON.parse(filter)); @@ -215,7 +203,7 @@ export class ExerciseStudentComponent implements OnInit { // this.assignmentFilter = this.dataAssignment.filter(p => p.language === ob.value); } if (ob.value == 'All') { - this.assignmentFilter = this.dataAssignment; + // this.assignmentFilter = this.dataAssignment; } } } \ No newline at end of file diff --git a/AngularApp/src/app/table-list/table-list.component.html b/AngularApp/src/app/table-list/table-list.component.html index cdb11d9831bff3fc0de68785ab35e68d40516fa4..068f835c0c901084c2c09bff254a2af79d39f4d5 100644 --- a/AngularApp/src/app/table-list/table-list.component.html +++ b/AngularApp/src/app/table-list/table-list.component.html @@ -24,11 +24,12 @@ <td>{{assignment.gitlabLastInfo.updated_at | date:"dd MMM yyyy 'at' hh:mm"}}</td> <td>{{assignment.gitlabLink}}</td> <td> - <button class="btn btn-outline-danger">Delete</button> + <button class="btn btn-outline-danger" (click)="delAssignment(assignment.gitlabId)">Delete</button> </td> </tr> </tbody> </table> + <h1>{{ delStatus }}</h1> </div> </div> </div> diff --git a/AngularApp/src/app/table-list/table-list.component.ts b/AngularApp/src/app/table-list/table-list.component.ts index b500da56c9bfa9155ac67747b6a00ff276de9cef..c5abfefdd3a65e32f59d286c0d136cd52b39f4e8 100644 --- a/AngularApp/src/app/table-list/table-list.component.ts +++ b/AngularApp/src/app/table-list/table-list.component.ts @@ -13,10 +13,25 @@ export class TableListComponent implements OnInit { assignments : Assignment[] = [] data : [] = [] formattedDate : string + delStatus : string; headers : string[] = ['Gitlab ID', 'Name', 'Description', 'Creation date', 'Last Update', 'gitlabLink', 'Options']; constructor(private service : AssignmentService) { } + + delAssignment(id: number) { + console.log(id); + this.service.delAssignments(id).subscribe( + () => { + this.delStatus = 'Delete successful'; + }, + (error) => { + console.error('Error deleting assignment:', error); + this.delStatus = 'Delete failed'; + } + ); + } + ngOnInit() { this.service.getAssignments().subscribe((assignment) => { this.assignments = assignment @@ -24,12 +39,7 @@ export class TableListComponent implements OnInit { this.assignments[i].gitlabCreationInfo = JSON.parse(assignment[i].gitlabCreationInfo) this.assignments[i].gitlabLastInfo = JSON.parse(assignment[i].gitlabLastInfo) } + console.log(this.assignments[0].gitlabCreationInfo) }) - - - } - - delAssignment() { - } } diff --git a/AngularApp/src/services/assignment.service.ts b/AngularApp/src/services/assignment.service.ts index df3626739ab89dd41de39a60fd9df52690b54b20..166b29063c52a88bb2f590bf9f1fa664675ff029 100644 --- a/AngularApp/src/services/assignment.service.ts +++ b/AngularApp/src/services/assignment.service.ts @@ -14,4 +14,9 @@ export class AssignmentService { getAssignments(): Observable<Assignment[]> { return this.http.get<Assignment[]>(`${this.baseUrl}/assignments`); } + + delAssignments(id: number): Observable<any> { + const url = `${this.baseUrl}/assignments/${id}`; + return this.http.delete(url); + } }