1228dbfc137476fb39742521fd917339fe1ae318
[motion2.git] / server / api / mailInteraction / mailInteraction.events.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
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.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x334f=['length','emit','hook','exports','../../mysqldb','MailInteraction','MailMessage','save','remove','getUsers','setDataValue','Users','map','findAll','then'];(function(_0x277b55,_0x8ba28){var _0xff0d15=function(_0x1beefc){while(--_0x1beefc){_0x277b55['push'](_0x277b55['shift']());}};_0xff0d15(++_0x8ba28);}(_0x334f,0x18a));var _0xf334=function(_0x241204,_0x28b505){_0x241204=_0x241204-0x0;var _0x30475b=_0x334f[_0x241204];return _0x30475b;};'use strict';var EventEmitter=require('events');var MailInteraction=require(_0xf334('0x0'))['db'][_0xf334('0x1')];var MailMessage=require(_0xf334('0x0'))['db'][_0xf334('0x2')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':_0xf334('0x3'),'afterUpdate':'update','afterDestroy':_0xf334('0x4')};function emitEvent(_0x5b0a15){return function(_0x103dd2,_0x381a92,_0x505680){_0x103dd2[_0xf334('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x2e3cf5){_0x103dd2[_0xf334('0x6')](_0xf334('0x7'),_0x2e3cf5[_0xf334('0x8')](function(_0x57b6d2){return{'id':_0x57b6d2['id']};}));return MailMessage[_0xf334('0x9')]({'where':{'MailInteractionId':_0x103dd2['id'],'direction':'in','read':![]},'raw':!![]});})[_0xf334('0xa')](function(_0x44e065){_0x103dd2[_0xf334('0x6')]('unreadMessages',_0x44e065[_0xf334('0xb')]);MailInteractionEvents[_0xf334('0xc')](_0x5b0a15+':'+_0x103dd2['id'],_0x103dd2);MailInteractionEvents[_0xf334('0xc')](_0x5b0a15,_0x103dd2);_0x505680(null);})['catch'](_0x505680(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];MailInteraction[_0xf334('0xd')](e,emitEvent(event));}}module[_0xf334('0xe')]=MailInteractionEvents;