diff --git a/src/app/pages/chat/chat.page.ts b/src/app/pages/chat/chat.page.ts index b30f385cb..43caf1ab2 100644 --- a/src/app/pages/chat/chat.page.ts +++ b/src/app/pages/chat/chat.page.ts @@ -103,7 +103,6 @@ export class ChatPage implements OnInit { ){ this.loggedUserChat = authService.ValidatedUserChat['data']; this.headers = new HttpHeaders(); - this.loadMessage(); } ngOnInit() { @@ -140,16 +139,16 @@ hideRefreshButton(){ } -loadMessage(){ +/* loadMessage(){ this.chatService.messages.subscribe(msg => { console.log("Response from websocket: " + msg); }); -} -sendMsg() { +} */ +/* sendMsg() { console.log("new message from client to websocket: ", this.message); this.chatService.messages.next(this.message); this.message.msg = ""; -} +} */ /* Fim websockets functions */ @@ -168,9 +167,7 @@ sendMsg() { this.showEmptyComponent=true; } openGroupContactsPage(data){ - console.log(data); this.groupRoomId = data; - console.log(this.groupRoomId); this.closeAllDesktopComponents(); if(window.innerWidth <= 1024){ diff --git a/src/app/pages/chat/group-messages/group-messages.page.html b/src/app/pages/chat/group-messages/group-messages.page.html index 8591a6dca..2ab28f6eb 100644 --- a/src/app/pages/chat/group-messages/group-messages.page.html +++ b/src/app/pages/chat/group-messages/group-messages.page.html @@ -37,7 +37,7 @@ Esta conversa passou a grupo
A conversa original mantêm-se como chat individual -
+
{{msg.u.name}} diff --git a/src/app/pages/chat/messages/messages.page.ts b/src/app/pages/chat/messages/messages.page.ts index 06df3ea3a..50bad6262 100644 --- a/src/app/pages/chat/messages/messages.page.ts +++ b/src/app/pages/chat/messages/messages.page.ts @@ -49,8 +49,8 @@ export class MessagesPage implements OnInit, AfterViewChecked { /* setInterval(()=>{ */ this.load(); /* }, 9000); */ - this.el = document.getElementById("scrollToBottom"); - this.el.scrollTop = this.el.scrollHeight - this.el.scrollTop; + /* this.el = document.getElementById("scrollToBottom"); + this.el.scrollTop = this.el.scrollHeight - this.el.scrollTop; */ } @@ -78,7 +78,6 @@ export class MessagesPage implements OnInit, AfterViewChecked { try { this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight; } catch(err) { } - } sendMessage(){ diff --git a/src/app/services/chat.service.ts b/src/app/services/chat.service.ts index 838225d47..0d00b4bb6 100644 --- a/src/app/services/chat.service.ts +++ b/src/app/services/chat.service.ts @@ -20,8 +20,8 @@ export class ChatService { X_User_Id:any; X_Auth_Token:any; - SERVER_URL = 'wss://www.tabularium.pt/websocket'; - public messages: Subject; + //SERVER_URL = 'wss://www.tabularium.pt/websocket'; + //public messages: Subject; loggedUserChat:any; constructor( @@ -30,7 +30,7 @@ export class ChatService { private authService: AuthService, private storage: Storage, private storageService:StorageService, - private wsService: WebsocketService, + //private wsService: WebsocketService, ) { this.loggedUserChat = authService.ValidatedUserChat; @@ -41,13 +41,13 @@ export class ChatService { headers: this.headers, }; - this.messages = >this.wsService.connect(this.SERVER_URL).map((response: MessageEvent): any => { + /* this.messages = >this.wsService.connect(this.SERVER_URL).map((response: MessageEvent): any => { let data = JSON.parse(response.data); console.log(data); return (JSON.stringify(data)); - }); + }); */ } - + getAllChannels(){ return this.http.get(environment.apiChatUrl+'channels.list', this.options); } @@ -61,17 +61,17 @@ export class ChatService { getRoomInfo(roomId:any){ let params = new HttpParams(); params = params.set("roomId", roomId); - let opts = { - headers: this.headers, - params: params + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'rooms.info', opts); - + } customsRooms(params:any){ - let opts = { - headers: this.headers, - params: params + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'rooms.get', opts); } @@ -95,22 +95,22 @@ export class ChatService { let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'im.history', opts); } sendMessage(body:any){ - let opts = { + let opts = { headers: this.headers, } return this.http.post(environment.apiChatUrl+'chat.sendMessage', body, opts); } leaveRoom(body:any){ - let opts = { + let opts = { headers: this.headers, } return this.http.post(environment.apiChatUrl+'rooms.leave', body, opts); @@ -120,15 +120,15 @@ export class ChatService { let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'im.members', opts); } removeChatRoom(body:any){ - let opts = { + let opts = { headers: this.headers, } return this.http.post(environment.apiChatUrl+'im.close', body, this.options); @@ -139,10 +139,10 @@ export class ChatService { getDirectMessage(roomId:string){ let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'im.messages', opts); } @@ -155,10 +155,10 @@ export class ChatService { let params = new HttpParams(); let url=environment.apiChatUrl+'groups.members'; params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(url, opts); } @@ -166,10 +166,10 @@ export class ChatService { let params = new HttpParams(); let url=environment.apiChatUrl+'channels.members'; params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(url, opts); } @@ -178,20 +178,20 @@ export class ChatService { let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'groups.history', opts); } getPublicGroupMessages(roomId:any){ let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'channels.history', opts); } @@ -208,7 +208,7 @@ export class ChatService { return this.http.post(environment.apiChatUrl+'channels.leave', body, this.options); } removeChannelMember(body:any){ - let opts = { + let opts = { headers: this.headers, } return this.http.post(environment.apiChatUrl+'channels.kick', body, opts); @@ -225,10 +225,10 @@ export class ChatService { getGroupInfo(roomId:any){ let params = new HttpParams(); params = params.set("roomId", roomId); - - let opts = { - headers: this.headers, - params: params + + let opts = { + headers: this.headers, + params: params } return this.http.get(environment.apiChatUrl+'groups.info', opts); } @@ -236,7 +236,7 @@ export class ChatService { return this.http.post(environment.apiChatUrl+'groups.rename', body, this.options); } removeGroupMember(body:any){ - let opts = { + let opts = { headers: this.headers, } return this.http.post(environment.apiChatUrl+'groups.kick', body, opts); diff --git a/src/app/services/websocket.service.ts b/src/app/services/websocket.service.ts index a4a9d8471..424a6914e 100644 --- a/src/app/services/websocket.service.ts +++ b/src/app/services/websocket.service.ts @@ -25,7 +25,7 @@ export class WebsocketService { let ws = new WebSocket(url); console.log(ws); - + let observable = Rx.Observable.create((obs: Rx.Observer) => { ws.onmessage = obs.next.bind(obs); diff --git a/src/app/shared/chat/group-messages/group-messages.page.html b/src/app/shared/chat/group-messages/group-messages.page.html index e6ff5712f..ef014d413 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.html +++ b/src/app/shared/chat/group-messages/group-messages.page.html @@ -36,8 +36,8 @@ {{message}} Esta conversa passou a grupo
A conversa original mantêm-se como chat individual
-
-
+
+
{{msg.u.name}} @@ -68,7 +68,7 @@
- diff --git a/src/app/shared/chat/group-messages/group-messages.page.ts b/src/app/shared/chat/group-messages/group-messages.page.ts index f3d67b623..36e609cc9 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.ts +++ b/src/app/shared/chat/group-messages/group-messages.page.ts @@ -1,4 +1,4 @@ -import { Component, OnChanges, OnInit, Input, SimpleChanges, Output, EventEmitter} from '@angular/core'; +import { Component, OnChanges, OnInit, Input, SimpleChanges, Output, EventEmitter, ViewChild, ElementRef, AfterViewChecked} from '@angular/core'; import { ActionSheetController, AnimationController, MenuController, ModalController, PopoverController } from '@ionic/angular'; import { AlertService } from 'src/app/services/alert.service'; import { AuthService } from 'src/app/services/auth.service'; @@ -14,7 +14,7 @@ import { GroupContactsPage } from './group-contacts/group-contacts.page'; templateUrl: './group-messages.page.html', styleUrls: ['./group-messages.page.scss'], }) -export class GroupMessagesPage implements OnInit, OnChanges { +export class GroupMessagesPage implements OnInit, OnChanges, AfterViewChecked { showLoader: boolean; isGroupCreated:boolean; loggedUser: any; @@ -34,6 +34,8 @@ export class GroupMessagesPage implements OnInit, OnChanges { @Output() openGroupContacts:EventEmitter = new EventEmitter(); @Output() openEditGroupPage:EventEmitter = new EventEmitter(); + @ViewChild('scrollMe') private myScrollContainer: ElementRef; + constructor( private menu: MenuController, private modalController: ModalController, @@ -49,6 +51,7 @@ export class GroupMessagesPage implements OnInit, OnChanges { } ngOnChanges(changes: SimpleChanges): void { this.getRoomInfo(); + this.scrollToBottom(); } ngOnInit() { @@ -57,8 +60,16 @@ export class GroupMessagesPage implements OnInit, OnChanges { console.log(this.roomId); } - notImplemented(){ - this.alertService.presentAlert('Funcionalidade em desenvolvimento'); + ngAfterViewChecked() { + this.scrollToBottom(); + } + + scrollToBottom(): void { + try { + this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight; + } catch(err) { } + finally { + } } openGroupContactsPage(){ @@ -73,6 +84,7 @@ export class GroupMessagesPage implements OnInit, OnChanges { this.getRoomInfo(); ev.target.complete(); } + get watch(){ this.getRoomInfo(); console.log('here watching'); diff --git a/src/app/shared/chat/messages/messages.page.ts b/src/app/shared/chat/messages/messages.page.ts index cce722c73..c4db23c5d 100644 --- a/src/app/shared/chat/messages/messages.page.ts +++ b/src/app/shared/chat/messages/messages.page.ts @@ -45,15 +45,14 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges { /* this.dm = this.navParams.get('dm'); */ } ngOnChanges(changes: SimpleChanges): void { - console.log(this.roomId); - this.load(); + //this.load(); //throw new Error('Method not implemented.'); } ngOnInit() { - //this.scrollToBottom(); + this.scrollToBottom(); /* setInterval(()=>{ */ this.load(); @@ -79,20 +78,17 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges { } ngAfterViewChecked() { - //this.scrollToBottom(); - console.log(this.roomId); + this.scrollToBottom(); } - /* scrollToBottom(): void { - const loader = this.toastService.loading() + scrollToBottom(): void { try { this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight; } catch(err) { } finally { - loader.remove() } + } - } */ loadMoreMessages(ev:any){ }