diff --git a/frontend/src/app/remove-member-dialog/remove-member-dialog.component.html b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.html new file mode 100644 index 0000000..6ef7120 --- /dev/null +++ b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.html @@ -0,0 +1,13 @@ +

Retirer un membre

+ +
+
+

Saisissez un nouveau nom d'utilisateur à retirer à la room

+ +
+
+
Erreur : {{errorMessage}}
+
+ + +
diff --git a/frontend/src/app/remove-member-dialog/remove-member-dialog.component.scss b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/frontend/src/app/remove-member-dialog/remove-member-dialog.component.spec.ts b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.spec.ts new file mode 100644 index 0000000..2dbf388 --- /dev/null +++ b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { RemoveMemberDialogComponent } from './remove-member-dialog.component'; + +describe('RemoveMemberDialogComponent', () => { + let component: RemoveMemberDialogComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ RemoveMemberDialogComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(RemoveMemberDialogComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/frontend/src/app/remove-member-dialog/remove-member-dialog.component.ts b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.ts new file mode 100644 index 0000000..8851cb7 --- /dev/null +++ b/frontend/src/app/remove-member-dialog/remove-member-dialog.component.ts @@ -0,0 +1,40 @@ +import {Component, Inject, OnInit} from '@angular/core'; +import {MAT_DIALOG_DATA, MatDialogRef} from "@angular/material/dialog"; +import {MessageService} from "../services/message/message.service"; +import {environment} from "../../environments/environment"; +import {AddMemberDialogData} from "../add-member-dialog/add-member-dialog.component"; + +@Component({ + selector: 'app-remove-member-dialog', + templateUrl: './remove-member-dialog.component.html', + styleUrls: ['./remove-member-dialog.component.scss'] +}) +export class RemoveMemberDialogComponent { + + memberName = ''; + errorMessage = ''; + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: AddMemberDialogData, + @Inject(MessageService) private messageService: MessageService) { } + + onNoClick(): void { + this.dialogRef.close(); + } + + onDeleteMember(){ + this.messageService.sendMessage(environment.urlCPR, "conversations/removeRoomMember", {owner: this.data.owner, conversationid: this.data.conversationid, member: this.memberName}).subscribe(data => { + if (data.status !== 'ok') { + console.log(data.data.reason); + this.errorMessage = data.data.reason; + } + else{ + this.dialogRef.close({ + data: data.data + }); + } + }); + } + +}