@@ -17,13 +17,13 @@ import { MessagingService } from './providers/messaging.service';
1717import { ContactService } from './providers/contact.service' ;
1818import { StorageService } from './providers/storage.service' ;
1919import { TranslatorService } from './providers/translator.service' ;
20+ import { ConversationsService } from './providers/conversations.service' ;
2021import { ChatPresenceHandlerService } from './providers/chat-presence-handler.service' ;
2122import { AgentAvailabilityService } from './providers/agent-availability.service' ;
2223
2324// firebase
2425import * as firebase from 'firebase/app' ;
2526import 'firebase/app' ;
26-
2727import { environment } from '../environments/environment' ;
2828
2929// utils
@@ -99,7 +99,8 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
9999 private storageService : StorageService ,
100100 public appConfigService : AppConfigService ,
101101 public globalSettingsService : GlobalSettingsService ,
102- public settingsSaverService : SettingsSaverService
102+ public settingsSaverService : SettingsSaverService ,
103+ public conversationsService : ConversationsService
103104 ) {
104105 // firebase.initializeApp(environment.firebase); // here shows the error
105106 // console.log('appConfigService.getConfig().firebase', appConfigService.getConfig().firebase);
@@ -122,6 +123,20 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
122123 /** */
123124 ngAfterViewInit ( ) {
124125 // this.triggerOnViewInit();
126+ this . ngZone . run ( ( ) => {
127+ const that = this ;
128+ const subChangedConversation = this . conversationsService . obsChangeConversation . subscribe ( ( conversation ) => {
129+ that . ngZone . run ( ( ) => {
130+ if ( that . g . isOpen === false && conversation ) {
131+ // that.g.isOpenNewMessage = true;
132+ that . g . setParameter ( 'displayEyeCatcherCard' , 'none' ) ;
133+ that . triggerOnChangedConversation ( conversation ) ;
134+ that . g . wdLog ( [ ' obsChangeConversation ::: ' + conversation ] ) ;
135+ }
136+ } ) ;
137+ } ) ;
138+ this . subscriptions . push ( subChangedConversation ) ;
139+ } ) ;
125140 }
126141
127142 // ========= begin:: SUBSCRIPTIONS ============//
@@ -309,7 +324,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
309324 attributes = JSON . parse ( this . storageService . getItem ( 'attributes' ) ) ;
310325 // console.log('> attributes: ', attributes);
311326 } catch ( error ) {
312- // console.log( '> Error is handled attributes: ', error);
327+ this . g . wdLog ( [ '> Error :' + error ] ) ;
313328 }
314329 if ( ! attributes && attributes === null ) {
315330 attributes = { } ;
@@ -708,7 +723,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
708723 that . signOut ( ) ;
709724 } ) ;
710725 } catch ( error ) {
711- console . error ( ' Error: ' , error ) ;
726+ this . g . wdLog ( [ '> Error :' + error ] ) ;
712727 }
713728 }
714729
@@ -1024,6 +1039,9 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
10241039 */
10251040 private returnSelectedConversation ( $event ) {
10261041 if ( $event ) {
1042+ if ( this . g . isOpen === false ) {
1043+ this . f21_open ( ) ;
1044+ }
10271045 this . conversationSelected = $event ;
10281046 // this.g.recipientId = $event.recipient;
10291047 // this.g.setVariable('recipientId', $event.recipient);
@@ -1185,6 +1203,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
11851203 const onInit = new CustomEvent ( 'onInit' , { detail : { default_settings : default_settings } } ) ;
11861204 if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
11871205 windowContext . tiledesk . tiledeskroot . dispatchEvent ( onInit ) ;
1206+ this . g . windowContext = windowContext ;
11881207 } else {
11891208 this . el . nativeElement . dispatchEvent ( onInit ) ;
11901209 }
@@ -1197,7 +1216,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
11971216 const windowContext = this . g . windowContext ;
11981217 if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
11991218 windowContext . tiledesk . tiledeskroot . dispatchEvent ( onOpen ) ;
1200- // this.g.setParameter('windowContext', windowContext);
12011219 this . g . windowContext = windowContext ;
12021220 } else {
12031221 this . el . nativeElement . dispatchEvent ( onOpen ) ;
@@ -1211,7 +1229,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
12111229 const windowContext = this . g . windowContext ;
12121230 if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
12131231 windowContext . tiledesk . tiledeskroot . dispatchEvent ( onClose ) ;
1214- // this.g.setParameter('windowContext', windowContext);
12151232 this . g . windowContext = windowContext ;
12161233 } else {
12171234 this . el . nativeElement . dispatchEvent ( onClose ) ;
@@ -1226,7 +1243,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
12261243 const windowContext = this . g . windowContext ;
12271244 if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
12281245 windowContext . tiledesk . tiledeskroot . dispatchEvent ( onOpenEyeCatcher ) ;
1229- // this.g.setParameter('windowContext', windowContext);
12301246 this . g . windowContext = windowContext ;
12311247 } else {
12321248 this . el . nativeElement . dispatchEvent ( onOpenEyeCatcher ) ;
@@ -1239,7 +1255,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
12391255 const windowContext = this . g . windowContext ;
12401256 if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
12411257 windowContext . tiledesk . tiledeskroot . dispatchEvent ( onClosedEyeCatcher ) ;
1242- // this.g.setParameter('windowContext', windowContext);
12431258 this . g . windowContext = windowContext ;
12441259 } else {
12451260 this . el . nativeElement . dispatchEvent ( onClosedEyeCatcher ) ;
@@ -1273,6 +1288,43 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
12731288 }
12741289 }
12751290
1291+
1292+ /** */
1293+ private triggerOnChangedConversation ( conversation : ConversationModel ) {
1294+ this . g . wdLog ( [ ' ---------------- triggerOnChangedConversation ---------------- ' , conversation ] ) ;
1295+ try {
1296+ const triggerChangedConversation = new CustomEvent ( 'onChangedConversation' , { detail : { conversation : conversation } } ) ;
1297+ const windowContext = this . g . windowContext ;
1298+ if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
1299+ windowContext . tiledesk . tiledeskroot . dispatchEvent ( triggerChangedConversation ) ;
1300+ this . g . windowContext = windowContext ;
1301+ } else {
1302+ this . el . nativeElement . dispatchEvent ( triggerChangedConversation ) ;
1303+ }
1304+ this . g . isOpenNewMessage = true ;
1305+ } catch ( e ) {
1306+ this . g . wdLog ( [ '> Error :' + e ] ) ;
1307+ }
1308+ }
1309+
1310+ /** */
1311+ private triggerOnCloseMessagePreview ( ) {
1312+ this . g . wdLog ( [ ' ---------------- triggerOnCloseMessagePreview ---------------- ' ] ) ;
1313+ try {
1314+ const triggerCloseMessagePreview = new CustomEvent ( 'onCloseMessagePreview' , { detail : { } } ) ;
1315+ const windowContext = this . g . windowContext ;
1316+ if ( windowContext . tiledesk && windowContext . tiledesk . tiledeskroot ) {
1317+ windowContext . tiledesk . tiledeskroot . dispatchEvent ( triggerCloseMessagePreview ) ;
1318+ this . g . windowContext = windowContext ;
1319+ } else {
1320+ this . el . nativeElement . dispatchEvent ( triggerCloseMessagePreview ) ;
1321+ }
1322+ this . g . isOpenNewMessage = false ;
1323+ } catch ( e ) {
1324+ this . g . wdLog ( [ '> Error :' + e ] ) ;
1325+ }
1326+ }
1327+
12761328 // ========= END:: TRIGGER FUNCTIONS ============//
12771329
12781330 // setSound() {
0 commit comments