This commit is contained in:
Gregoire Parant 2020-10-19 21:04:16 +02:00
parent dfa6d2cc66
commit ba9f9dcbe1
5 changed files with 22 additions and 21 deletions

View file

@ -7,21 +7,21 @@ export class Ban implements TypeMessageInterface {
private titleMessage = 'IMPORTANT !';
showMessage(message: string): void {
let div : HTMLDivElement = document.createElement('div');
const div : HTMLDivElement = document.createElement('div');
div.classList.add('modal-report-user');
div.id = 'report-message-user';
div.style.backgroundColor = '#000000e0';
let img : HTMLImageElement = document.createElement('img');
const img : HTMLImageElement = document.createElement('img');
img.src = 'resources/logos/report.svg';
div.appendChild(img);
let title : HTMLParagraphElement = document.createElement('p');
const title : HTMLParagraphElement = document.createElement('p');
title.id = 'title-report-user';
title.innerText = `${this.titleMessage} (${this.maxNbSecond})`;
div.appendChild(title);
let p : HTMLParagraphElement = document.createElement('p');
const p : HTMLParagraphElement = document.createElement('p');
p.id = 'body-report-user'
p.innerText = message;
div.appendChild(p);
@ -48,7 +48,7 @@ export class Ban implements TypeMessageInterface {
}else{
title.innerText = this.titleMessage;
let imgCancel : HTMLImageElement = document.createElement('img');
const imgCancel : HTMLImageElement = document.createElement('img');
imgCancel.id = 'cancel-report-user';
imgCancel.src = 'resources/logos/close.svg';

View file

@ -1,36 +1,36 @@
import {RoomConnection} from "../Connexion/RoomConnection";
import * as TypeMessages from "./TypeMessage";
export interface TypeMessageInterface{
showMessage(message: string) : void;
};
export interface TypeMessageInterface {
showMessage(message: string): void;
}
export class UserMessageManager {
typeMessages : Map<string, TypeMessageInterface> = new Map<string, TypeMessageInterface>();
typeMessages: Map<string, TypeMessageInterface> = new Map<string, TypeMessageInterface>();
constructor(private Connection: RoomConnection) {
let valueTypeMessageTab = Object.values(TypeMessages);
const valueTypeMessageTab = Object.values(TypeMessages);
Object.keys(TypeMessages).forEach((value: string, index: number) => {
let typeMessageInstance : TypeMessageInterface = (new valueTypeMessageTab[index]() as TypeMessageInterface);
const typeMessageInstance: TypeMessageInterface = (new valueTypeMessageTab[index]() as TypeMessageInterface);
this.typeMessages.set(value.toLowerCase(), typeMessageInstance);
});
this.initialise();
}
initialise(){
initialise() {
//receive signal to show message
this.Connection.receiveUserMessage((type: string, message: string) => {
this.showMessage(type, message);
});
}
showMessage(type: string, message: string){
let classTypeMessage = this.typeMessages.get(type.toLowerCase());
if(!classTypeMessage){
showMessage(type: string, message: string) {
const classTypeMessage = this.typeMessages.get(type.toLowerCase());
if (!classTypeMessage) {
console.error('Message unknown');
return;
}
classTypeMessage.showMessage(message);
}
};
}