This commit is contained in:
tiago.kayaya
2021-07-23 14:43:51 +01:00
parent 9bcc06add2
commit b5e1ad4201
17 changed files with 194 additions and 203 deletions
@@ -1,5 +1,6 @@
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
import { ModalController, PickerController } from '@ionic/angular';
import { AuthService } from 'src/app/services/auth.service';
import { ChatService } from 'src/app/services/chat.service';
@Component({
@@ -14,6 +15,7 @@ export class EditGroupPage implements OnInit {
selectedDuration = ['','',''];
groupName:string;
room:any;
loggedUser: any;
@Input() roomId:string;
@Output() openGroupContacts:EventEmitter<any> = new EventEmitter<any>();
@Output() openGroupMessage:EventEmitter<any> = new EventEmitter<any>();
@@ -23,7 +25,9 @@ export class EditGroupPage implements OnInit {
private modalController: ModalController,
private pickerController: PickerController,
private chatService: ChatService,
private authService: AuthService,
) {
this.loggedUser = authService.ValidatedUserChat['data'];
}
ngOnInit() {
@@ -58,7 +62,7 @@ export class EditGroupPage implements OnInit {
else{
console.log("Invalid name!");
}
this.close();
this.close();
}
_ionChange(event){
@@ -68,11 +72,11 @@ export class EditGroupPage implements OnInit {
const picker = await this.pickerController.create({
cssClass: '',
buttons: [
{
{
text: 'Cancelar', role: 'cancel', cssClass: 'btn-cancel'
},
{
text: 'Ok',
{
text: 'Ok',
cssClass: 'btn-cancel',
handler:(value:any)=>{
console.log('button done pressed');
@@ -86,24 +90,24 @@ export class EditGroupPage implements OnInit {
if(value.days.value > 0){
if(value.days.value == 1){
if(value.hours.value == 1){
this.displayDuration = value.days.value + " day " +
this.displayDuration = value.days.value + " day " +
value.hours.value + " hora " +
value.minutes.value + " minutos";
}
else{
this.displayDuration = value.days.value + " days " +
this.displayDuration = value.days.value + " days " +
value.hours.value + " horas " +
value.minutes.value + " minutos";
}
}
else{
if(value.hours.value == 1){
this.displayDuration = value.days.value + " days " +
this.displayDuration = value.days.value + " days " +
value.hours.value + " hora " +
value.minutes.value + " minutos";
}
else{
this.displayDuration = value.days.value + " days " +
this.displayDuration = value.days.value + " days " +
value.hours.value + " horas " +
value.minutes.value + " minutos";
}
@@ -119,7 +123,7 @@ export class EditGroupPage implements OnInit {
value.minutes.value + " minutos";
}
}
}
}
},
},
],
@@ -173,7 +177,7 @@ export class EditGroupPage implements OnInit {
await picker.present();
picker.onDidDismiss().then(async data =>{
let day = await picker.getColumn('days');
let hour = await picker.getColumn('hours');
let hour = await picker.getColumn('hours');
let minutes = await picker.getColumn('minutes');
});
@@ -40,11 +40,9 @@ export class GroupContactsPage implements OnInit {
private chatService: ChatService,
private authService: AuthService,
//private navParams: NavParams,
)
)
{
this.authService.userData$.subscribe((res:any)=>{
this.loggedUser=res;
});
this.loggedUser = authService.ValidatedUserChat['data'];
this.textSearch="";
this.dm=null;
this.room=null;
@@ -56,9 +54,9 @@ export class GroupContactsPage implements OnInit {
ngOnInit() {
//this.getRoomInfo();
//this.loadUsers();
this.loadUsers();
console.log(this.roomId);
this.getChatInfo();
this.getChatInfo();
//console.log(this.isGroupCreated);
}
@@ -72,7 +70,7 @@ export class GroupContactsPage implements OnInit {
}
deleteMember(data:any){
console.log(data);
let body = {
"roomId": this.roomId,
"userId": data._id,
@@ -100,7 +98,7 @@ export class GroupContactsPage implements OnInit {
this.chatService.getRoomInfo(this.roomId).subscribe(res=>{
console.log(res);
let room = res['room'];
if(room.t == "p"){
this.chatService.getGroupMembers(this.roomId).subscribe(res=>{
this.members = res['members'];
@@ -148,7 +146,7 @@ export class GroupContactsPage implements OnInit {
}
loadUsers1(members:any){
this.options = {
this.options = {
headers: this.headers,
};
this.chatService.getAllUsers().subscribe((res:any)=>{
@@ -161,7 +159,7 @@ export class GroupContactsPage implements OnInit {
else{
this.contacts = res.users.filter(data => data.username != this.loggedUser.me.username);
}
this.users = this.contacts.sort((a,b) => {
if(a.name < b.name){
return -1;
@@ -172,13 +170,13 @@ export class GroupContactsPage implements OnInit {
return 0;
});
console.log(this.users);
this.showLoader = false;
});
}
loadUsers(){
this.options = {
this.options = {
headers: this.headers,
};
this.chatService.getAllUsers().subscribe((res:any)=>{
@@ -191,7 +189,7 @@ export class GroupContactsPage implements OnInit {
else{
this.contacts = res.users.filter(data => data.username != this.loggedUser.me.username);
}
this.users = this.contacts.sort((a,b) => {
if(a.name < b.name){
return -1;
@@ -202,7 +200,7 @@ export class GroupContactsPage implements OnInit {
return 0;
});
console.log(this.users);
this.showLoader = false;
});
}
@@ -228,7 +226,7 @@ export class GroupContactsPage implements OnInit {
async close(){
this.modalController.dismiss();
if(this.isGroupCreated){
console.log('go to conversa');
console.log('go to conversa');
}
else{
this.modalController.dismiss();
@@ -272,7 +270,7 @@ export class GroupContactsPage implements OnInit {
}
this.chatService.addUserToGroup(body).subscribe(res=>{
console.log(res['success']);
});
});
});
}
@@ -285,14 +283,14 @@ export class GroupContactsPage implements OnInit {
console.log(res['group']);
this.addContacts(res['group']);
this.openGroupMessages(res['group']);
});
}
else{
this.addContacts(this.room);
this.close();
}
this.close();
}
} */
async newGroup(){
@@ -312,7 +310,7 @@ export class GroupContactsPage implements OnInit {
component: GroupMessagesPage,
componentProps: {
room: room,
},
},
cssClass: 'group-messages',
backdropDismiss: false
});
@@ -9,7 +9,7 @@
<button class="btn-no-color" (click)="openGroupMessagesOptions()">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
</button>
</div>
</div>
</div>
<div (click)="openGroupContactsPage()" class="header-bottom">
<div class="header-bottom-icon">
@@ -21,12 +21,13 @@ export class GroupMessagesPage implements OnInit, OnChanges {
message:any;
leaveStatus:any;
messages:any;
room:any;
roomName:any;
members:any;
loggedUserChat:any;
@Input() roomId:string;
@Output() closeAllDesktopComponents:EventEmitter<any> = new EventEmitter<any>();
@Output() showEmptyContainer:EventEmitter<any> = new EventEmitter<any>();
@@ -43,6 +44,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
private animationController: AnimationController,
private alertService: AlertService,
) {
this.loggedUserChat = authService.ValidatedUserChat['data'];
this.isGroupCreated = true;
}
ngOnChanges(changes: SimpleChanges): void {
@@ -50,10 +52,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
}
ngOnInit() {
this.authService.userData$.subscribe((res:any)=>{
this.loggedUser=res;
console.log(this.loggedUser);
});
this.loggedUser=this.loggedUserChat;
this.getRoomInfo();
console.log(this.roomId);
}
@@ -77,7 +76,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
get watch(){
this.getRoomInfo();
console.log('here watching');
return this.roomId;
}
getRoomInfo(){
@@ -112,18 +111,18 @@ export class GroupMessagesPage implements OnInit, OnChanges {
}
loadGroupMessages(room:any){
console.log('here'+room.t);
this.showLoader = true;
//If group is private call getGroupMembers
if(room.t === 'p'){
console.log('private');
this.chatService.getPrivateGroupMessages(this.roomId).subscribe(res=>{
console.log(res);
let msgOnly = res['messages'].filter(data => data.t != 'au');
this.messages = msgOnly.reverse();
console.log(res);
this.showLoader = false;
});
}
@@ -138,14 +137,14 @@ export class GroupMessagesPage implements OnInit, OnChanges {
sendMessage(){
let body = {
"message":
{
"rid": this.roomId, "msg": this.message
"message":
{
"rid": this.roomId, "msg": this.message
}
}
this.chatService.sendMessage(body).subscribe(res=> {
/* this.loadGroupMessages(); */
/* this.loadGroupMessages(); */
this.getRoomInfo();
});
this.message = "";
@@ -174,7 +173,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
const leaveAnimation = (baseEl: any) => {
return enterAnimation(baseEl).direction('reverse');
}
/* const popover = await this.popoverController.create({
component: MessagesOptionsPage,
@@ -217,11 +216,11 @@ export class GroupMessagesPage implements OnInit, OnChanges {
else{
this.roomName = res.data.name.split('-').join(' ');
console.log(this.roomName);
this.getRoomInfo();
//this.modalController.dismiss();
};
});
}
@@ -252,9 +251,9 @@ export class GroupMessagesPage implements OnInit, OnChanges {
console.log(res);
if(res.data){
this.getRoomInfo();
//this.modalController.dismiss();
//this.modalController.dismiss();
};
});
}
async openChatOptions(ev: any) {
@@ -271,7 +270,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
}
async addContacts(){
console.log(this.members);
const modal = await this.modalController.create({
component: GroupContactsPage,
componentProps: {
@@ -279,7 +278,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
room: this.room,
members: this.members,
name: this.room.name,
},
},
cssClass: 'contacts',
backdropDismiss: false
});
@@ -310,7 +309,7 @@ export class GroupMessagesPage implements OnInit, OnChanges {
handler: () => {
console.log('Play clicked');
}
},
},
]
});
await actionSheet.present();
@@ -30,11 +30,9 @@ export class ContactsPage implements OnInit {
private http: HttpClient,
private chatService: ChatService,
private authService: AuthService,
)
{
this.authService.userData$.subscribe((res:any)=>{
this.loggedUser=res;
});
)
{
this.loggedUser = authService.ValidatedUserChat['data'];
this.textSearch="";
this.dm=null;
this.room=null;
@@ -65,7 +63,7 @@ export class ContactsPage implements OnInit {
}
loadUsers(){
this.options = {
this.options = {
headers: this.headers,
};
this.chatService.getAllUsers().subscribe((res:any)=>{
@@ -105,7 +103,7 @@ export class ContactsPage implements OnInit {
close(){
this.modalController.dismiss();
}
clicked(){
console.log('clicked');
}
@@ -122,7 +120,7 @@ export class ContactsPage implements OnInit {
}
getDirectMessage(roomId:any){
console.log(roomId);
this.chatService.getAllDirectMessages().subscribe(res=>{
let result = res['ims'].filter(data => data._id == roomId);
this.dm = result[0];
@@ -133,7 +131,7 @@ export class ContactsPage implements OnInit {
async openModal(dm:any){
this.close();
console.log(dm);
const modal = await this.modalController.create({
component: MessagesPage,
cssClass: 'group-messages',
@@ -155,8 +153,8 @@ export class ContactsPage implements OnInit {
//Get direct messages (dm)
/* this.getDirectMessage(this.room._id); */
console.log(this.dm);
/* const modal = await this.modalController.create({
component: MessagesPage,
cssClass: 'group-messages',
@@ -10,7 +10,7 @@
<button class="btn-no-color" (click)="_openMessagesOptions()">
<ion-icon src="assets/images/icons-menu.svg"></ion-icon>
</button>
</div>
</div>
</div>
<div hidden class="header-bottom" (click)="addContacts()">
<div class="header-bottom-icon">
@@ -48,6 +48,7 @@
<ion-footer>
FOOter
<div class="container width-100 d-flex">
<div>
<button class="btn-no-color" (click)="openSendMessageOptions()">
+28 -31
View File
@@ -29,7 +29,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
dmUsers:any;
@Input() roomId:string;
constructor(
public popoverController: PopoverController,
private modalController: ModalController,
@@ -39,33 +39,30 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
private animationController: AnimationController,
private alertService: AlertService,
private toastService: ToastService,
) {
) {
this.loggedUser = authService.ValidatedUserChat['data'];
/* this.dm = this.navParams.get('dm'); */
}
ngOnChanges(changes: SimpleChanges): void {
console.log(this.roomId);
this.load();
//throw new Error('Method not implemented.');
}
ngOnInit() {
this.scrollToBottom();
//this.scrollToBottom();
this.authService.userData$.subscribe((res:any)=>{
this.loggedUser=res;
console.log(this.loggedUser);
});
/* setInterval(()=>{ */
this.load();
/* }, 9000); */
console.log(this.roomId);
}
notImplemented(){
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
@@ -80,22 +77,22 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
this.load();
ev.target.complete();
}
ngAfterViewChecked() {
this.scrollToBottom();
ngAfterViewChecked() {
//this.scrollToBottom();
console.log(this.roomId);
}
scrollToBottom(): void {
}
/* scrollToBottom(): void {
const loader = this.toastService.loading()
try {
this.myScrollContainer.nativeElement.scrollTop = this.myScrollContainer.nativeElement.scrollHeight;
} catch(err) { }
} catch(err) { }
finally {
loader.remove()
}
}
} */
loadMoreMessages(ev:any){
}
@@ -103,18 +100,18 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
sendMessage(){
let body = {
"message":
{
"rid": this.roomId, "msg": this.message
"message":
{
"rid": this.roomId, "msg": this.message
}
}
this.chatService.sendMessage(body).subscribe(res=> {
this.loadMessages();
this.loadMessages();
});
this.message = "";
}
loadMessages(){
this.showLoader = true;
this.chatService.getRoomMessages(this.roomId).subscribe(res => {
@@ -126,7 +123,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
}
getChatMembers(){
console.log(this.roomId);
this.showLoader = true;
this.chatService.getMembers(this.roomId).subscribe(res=> {
this.dmUsers = res['members'].filter(data => data.username != this.loggedUser.me.username)
@@ -152,7 +149,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
async addContacts(){
const modal = await this.modalController.create({
component: ContactsPage,
componentProps: {},
componentProps: {},
cssClass: 'contacts',
backdropDismiss: false
});
@@ -209,7 +206,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
const leaveAnimation = (baseEl: any) => {
return enterAnimation(baseEl).direction('reverse');
}
/* const popover = await this.popoverController.create({
component: MessagesOptionsPage,
@@ -234,7 +231,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
return await modal.present();
}
async _openChatOptions() {
@@ -260,7 +257,7 @@ export class MessagesPage implements OnInit, AfterViewChecked, OnChanges {
const leaveAnimation = (baseEl: any) => {
return enterAnimation(baseEl).direction('reverse');
}
/* const popover = await this.popoverController.create({
component: MessagesOptionsPage,