1 // *************************************************************************
3 // * xCALLY Motion - The Omnichannel Contact Center *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved *
6 // *************************************************************************
8 // * Email: info@xcally.com *
9 // * Website: https://www.xcally.com *
11 // *************************************************************************
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. *
17 // *************************************************************************
18 var _0x9d7f=['hook','events','../../mysqldb','MailInteraction','MailMessage','setMaxListeners','save','update','remove','getUsers','then','setDataValue','Users','map','findAll','length','emit','catch','hasOwnProperty'];(function(_0x584b3f,_0x3b21a5){var _0x359088=function(_0x30a07a){while(--_0x30a07a){_0x584b3f['push'](_0x584b3f['shift']());}};_0x359088(++_0x3b21a5);}(_0x9d7f,0x1c9));var _0xf9d7=function(_0x10833e,_0x1218f3){_0x10833e=_0x10833e-0x0;var _0x5a7d8a=_0x9d7f[_0x10833e];return _0x5a7d8a;};'use strict';var EventEmitter=require(_0xf9d7('0x0'));var MailInteraction=require(_0xf9d7('0x1'))['db'][_0xf9d7('0x2')];var MailMessage=require('../../mysqldb')['db'][_0xf9d7('0x3')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents[_0xf9d7('0x4')](0x0);var events={'afterCreate':_0xf9d7('0x5'),'afterUpdate':_0xf9d7('0x6'),'afterDestroy':_0xf9d7('0x7')};function emitEvent(_0x376aa2){return function(_0x2318d5,_0x320d6d,_0x10568e){_0x2318d5[_0xf9d7('0x8')]({'attributes':['id'],'raw':!![]})[_0xf9d7('0x9')](function(_0x1787ad){_0x2318d5[_0xf9d7('0xa')](_0xf9d7('0xb'),_0x1787ad[_0xf9d7('0xc')](function(_0x92d241){return{'id':_0x92d241['id']};}));return MailMessage[_0xf9d7('0xd')]({'where':{'MailInteractionId':_0x2318d5['id'],'direction':'in','read':![]},'raw':!![]});})['then'](function(_0x45c7fb){_0x2318d5[_0xf9d7('0xa')]('unreadMessages',_0x45c7fb[_0xf9d7('0xe')]);MailInteractionEvents['emit'](_0x376aa2+':'+_0x2318d5['id'],_0x2318d5);MailInteractionEvents[_0xf9d7('0xf')](_0x376aa2,_0x2318d5);_0x10568e(null);})[_0xf9d7('0x10')](_0x10568e(null));};}for(var e in events){if(events[_0xf9d7('0x11')](e)){var event=events[e];MailInteraction[_0xf9d7('0x12')](e,emitEvent(event));}}module['exports']=MailInteractionEvents;