11import { Component , OnInit } from '@angular/core' ;
22import { Chats , Messages , Users } from 'api/collections' ;
33import { Chat , Message } from 'api/models' ;
4- import { NavController , PopoverController , ModalController } from 'ionic-angular' ;
4+ import { NavController , PopoverController , ModalController , AlertController } from 'ionic-angular' ;
55import { MeteorObservable } from 'meteor-rxjs' ;
66import { Observable , Subscriber } from 'rxjs' ;
77import { MessagesPage } from '../messages/messages' ;
@@ -18,7 +18,8 @@ export class ChatsPage implements OnInit {
1818 constructor (
1919 private navCtrl : NavController ,
2020 private popoverCtrl : PopoverController ,
21- private modalCtrl : ModalController ) {
21+ private modalCtrl : ModalController ,
22+ private alertCtrl : AlertController ) {
2223 this . senderId = Meteor . userId ( ) ;
2324 }
2425
@@ -90,8 +91,25 @@ export class ChatsPage implements OnInit {
9091 }
9192
9293 removeChat ( chat : Chat ) : void {
93- Chats . remove ( { _id : chat . _id } ) . subscribe ( ( ) => {
94+ MeteorObservable . call ( 'removeChat' , chat . _id ) . subscribe ( {
95+ error : ( e : Error ) => {
96+ if ( e ) {
97+ this . handleError ( e ) ;
98+ }
99+ }
100+ } ) ;
101+ }
102+
103+ handleError ( e : Error ) : void {
104+ console . error ( e ) ;
105+
106+ const alert = this . alertCtrl . create ( {
107+ buttons : [ 'OK' ] ,
108+ message : e . message ,
109+ title : 'Oops!'
94110 } ) ;
111+
112+ alert . present ( ) ;
95113 }
96114
97115 showOptions ( ) : void {
0 commit comments