62da0987c8c608a4b70cfef4869c1a4e9c1aa748
[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 _0x8a10=['MailMessage','setMaxListeners','update','remove','setDataValue','Users','map','findAll','then','unreadMessages','length','emit','catch','events','../../mysqldb','MailInteraction'];(function(_0x275198,_0x5d3ba5){var _0x380760=function(_0x492802){while(--_0x492802){_0x275198['push'](_0x275198['shift']());}};_0x380760(++_0x5d3ba5);}(_0x8a10,0x18d));var _0x08a1=function(_0x17d9e3,_0x1f969c){_0x17d9e3=_0x17d9e3-0x0;var _0x14192d=_0x8a10[_0x17d9e3];return _0x14192d;};'use strict';var EventEmitter=require(_0x08a1('0x0'));var MailInteraction=require(_0x08a1('0x1'))['db'][_0x08a1('0x2')];var MailMessage=require(_0x08a1('0x1'))['db'][_0x08a1('0x3')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents[_0x08a1('0x4')](0x0);var events={'afterCreate':'save','afterUpdate':_0x08a1('0x5'),'afterDestroy':_0x08a1('0x6')};function emitEvent(_0x3d11ef){return function(_0x101b79,_0x4413e3,_0x54a4ee){_0x101b79['getUsers']({'attributes':['id'],'raw':!![]})['then'](function(_0x33d567){_0x101b79[_0x08a1('0x7')](_0x08a1('0x8'),_0x33d567[_0x08a1('0x9')](function(_0x46a965){return{'id':_0x46a965['id']};}));return MailMessage[_0x08a1('0xa')]({'where':{'MailInteractionId':_0x101b79['id'],'direction':'in','read':![]},'raw':!![]});})[_0x08a1('0xb')](function(_0x5da96b){_0x101b79[_0x08a1('0x7')](_0x08a1('0xc'),_0x5da96b[_0x08a1('0xd')]);MailInteractionEvents[_0x08a1('0xe')](_0x3d11ef+':'+_0x101b79['id'],_0x101b79);MailInteractionEvents[_0x08a1('0xe')](_0x3d11ef,_0x101b79);_0x54a4ee(null);})[_0x08a1('0xf')](_0x54a4ee(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];MailInteraction['hook'](e,emitEvent(event));}}module['exports']=MailInteractionEvents;