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 _0x1d44=['MailMessage','save','remove','getUsers','then','setDataValue','Users','map','emit','catch','hook','exports','events','MailInteraction'];(function(_0x4b62e5,_0xa53820){var _0x27d2c5=function(_0x527fc8){while(--_0x527fc8){_0x4b62e5['push'](_0x4b62e5['shift']());}};_0x27d2c5(++_0xa53820);}(_0x1d44,0x194));var _0x41d4=function(_0x398481,_0x3de964){_0x398481=_0x398481-0x0;var _0x3a4d22=_0x1d44[_0x398481];return _0x3a4d22;};'use strict';var EventEmitter=require(_0x41d4('0x0'));var MailInteraction=require('../../mysqldb')['db'][_0x41d4('0x1')];var MailMessage=require('../../mysqldb')['db'][_0x41d4('0x2')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':_0x41d4('0x3'),'afterUpdate':'update','afterDestroy':_0x41d4('0x4')};function emitEvent(_0x1a42f9){return function(_0x14e865,_0x546b9c,_0x37ffc6){_0x14e865[_0x41d4('0x5')]({'attributes':['id'],'raw':!![]})[_0x41d4('0x6')](function(_0x2636ef){_0x14e865[_0x41d4('0x7')](_0x41d4('0x8'),_0x2636ef[_0x41d4('0x9')](function(_0x206a70){return{'id':_0x206a70['id']};}));return MailMessage['findAll']({'where':{'MailInteractionId':_0x14e865['id'],'direction':'in','read':![]},'raw':!![]});})[_0x41d4('0x6')](function(_0xa29fd7){_0x14e865[_0x41d4('0x7')]('unreadMessages',_0xa29fd7['length']);MailInteractionEvents[_0x41d4('0xa')](_0x1a42f9+':'+_0x14e865['id'],_0x14e865);MailInteractionEvents['emit'](_0x1a42f9,_0x14e865);_0x37ffc6(null);})[_0x41d4('0xb')](_0x37ffc6(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];MailInteraction[_0x41d4('0xc')](e,emitEvent(event));}}module[_0x41d4('0xd')]=MailInteractionEvents;