diff --git a/frontend/src/app/general/general.component.html b/frontend/src/app/general/general.component.html index aa993e6..21f47dc 100644 --- a/frontend/src/app/general/general.component.html +++ b/frontend/src/app/general/general.component.html @@ -16,7 +16,8 @@ - +
diff --git a/frontend/src/app/general/general.component.ts b/frontend/src/app/general/general.component.ts index 053c00d..81e43b1 100644 --- a/frontend/src/app/general/general.component.ts +++ b/frontend/src/app/general/general.component.ts @@ -1,8 +1,7 @@ -import {Component, Inject, Input, OnInit} from '@angular/core'; +import {Component, ElementRef, Inject, Input, OnInit, ViewChild} from '@angular/core'; import {ChatInfo, ChatService} from "../services/chat/chat.service"; -import {AuthService} from "../services/auth/auth.service"; -import {MessageService} from "../services/message/message.service"; import {environment} from "../../environments/environment"; +import {DatePipe} from "@angular/common"; @Component({ selector: 'app-general', @@ -15,23 +14,37 @@ export class GeneralComponent implements OnInit { private room = 'general'; public msg = ''; - constructor(private chatservice: ChatService) {} + // @ts-ignore + @ViewChild('ulMessages') ulMsg: ElementRef; + + + constructor(private chatservice: ChatService, private pipe: DatePipe) {} ngOnInit() { console.log('General working'); this.chatservice.setUrl(environment.urlCG); - this.chatservice.onNewMessage().subscribe(infos => { - console.log('message : '+infos); + this.chatservice.setRoom(this.room); + this.chatservice.onNewMessage(this.room).subscribe((infos: ChatInfo[]) => { + for(let data of infos){ + if(data !== undefined && data.date !== undefined){ + if(data.username === 'Server'){ + this.ulMsg.nativeElement.insertAdjacentHTML('beforeend', '
  • '+data.message+'
  • '); + } + else{ + this.ulMsg.nativeElement.insertAdjacentHTML('beforeend','
  • ['+this.pipe.transform(data.date, 'dd/MM/yyyy HH:MM:ss')+'] '+data.username+' : '+data.message+'
  • '); + } + } + } + window.scrollTo(0, document.body.scrollHeight); }); } sendButtonClick(){ console.log('Button working'); - if(this.msg){ + if(this.msg && this.username){ this.chatservice.sendMessage(this.username, this.room, this.msg); console.log(this.username, this.room, this.msg); this.msg = ''; } - } }