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 _0x83a8=['hasOwnProperty','exports','events','MailInteraction','MailMessage','save','remove','getUsers','setDataValue','findAll','then','unreadMessages','length','emit'];(function(_0x280820,_0xce9bc7){var _0x474787=function(_0x3d224e){while(--_0x3d224e){_0x280820['push'](_0x280820['shift']());}};_0x474787(++_0xce9bc7);}(_0x83a8,0x1ec));var _0x883a=function(_0x419cd9,_0x5cafbb){_0x419cd9=_0x419cd9-0x0;var _0x38412e=_0x83a8[_0x419cd9];return _0x38412e;};'use strict';var EventEmitter=require(_0x883a('0x0'));var MailInteraction=require('../../mysqldb')['db'][_0x883a('0x1')];var MailMessage=require('../../mysqldb')['db'][_0x883a('0x2')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':_0x883a('0x3'),'afterUpdate':'update','afterDestroy':_0x883a('0x4')};function emitEvent(_0x4d35cd){return function(_0x5f40be,_0x5ba76b,_0x59d2c3){_0x5f40be[_0x883a('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x2fb911){_0x5f40be[_0x883a('0x6')]('Users',_0x2fb911['map'](function(_0x18a7c5){return{'id':_0x18a7c5['id']};}));return MailMessage[_0x883a('0x7')]({'where':{'MailInteractionId':_0x5f40be['id'],'direction':'in','read':![]},'raw':!![]});})[_0x883a('0x8')](function(_0x2f710){_0x5f40be['setDataValue'](_0x883a('0x9'),_0x2f710[_0x883a('0xa')]);MailInteractionEvents[_0x883a('0xb')](_0x4d35cd+':'+_0x5f40be['id'],_0x5f40be);MailInteractionEvents[_0x883a('0xb')](_0x4d35cd,_0x5f40be);_0x59d2c3(null);})['catch'](_0x59d2c3(null));};}for(var e in events){if(events[_0x883a('0xc')](e)){var event=events[e];MailInteraction['hook'](e,emitEvent(event));}}module[_0x883a('0xd')]=MailInteractionEvents;