diff --git a/src/pages/chats/chats.ts b/src/pages/chats/chats.ts index f4efa3efb..acf0f5d09 100644 --- a/src/pages/chats/chats.ts +++ b/src/pages/chats/chats.ts @@ -1,7 +1,7 @@ import { Component, OnInit } from '@angular/core'; import { Chats, Messages, Users } from 'api/collections'; import { Chat, Message } from 'api/models'; -import { NavController, PopoverController, ModalController } from 'ionic-angular'; +import { NavController, PopoverController, ModalController, AlertController } from 'ionic-angular'; import { MeteorObservable } from 'meteor-rxjs'; import { Observable, Subscriber } from 'rxjs'; import { MessagesPage } from '../messages/messages'; @@ -18,7 +18,8 @@ export class ChatsPage implements OnInit { constructor( private navCtrl: NavController, private popoverCtrl: PopoverController, - private modalCtrl: ModalController) { + private modalCtrl: ModalController, + private alertCtrl: AlertController) { this.senderId = Meteor.userId(); } @@ -90,8 +91,25 @@ export class ChatsPage implements OnInit { } removeChat(chat: Chat): void { - Chats.remove({_id: chat._id}).subscribe(() => { + MeteorObservable.call('removeChat', chat._id).subscribe({ + error: (e: Error) => { + if (e) { + this.handleError(e); + } + } + }); + } + + handleError(e: Error): void { + console.error(e); + + const alert = this.alertCtrl.create({ + buttons: ['OK'], + message: e.message, + title: 'Oops!' }); + + alert.present(); } showOptions(): void {