Built motion from commit (unavailable).|2.5.0
[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 _0x2e68=['emit','hasOwnProperty','hook','exports','../../mysqldb','MailInteraction','MailMessage','setMaxListeners','update','remove','getUsers','setDataValue','Users','map','findAll','length'];(function(_0x363e5c,_0x1eabfa){var _0x37c5ac=function(_0x503167){while(--_0x503167){_0x363e5c['push'](_0x363e5c['shift']());}};_0x37c5ac(++_0x1eabfa);}(_0x2e68,0x1c4));var _0x82e6=function(_0x397e5f,_0x454c8f){_0x397e5f=_0x397e5f-0x0;var _0x5302b8=_0x2e68[_0x397e5f];return _0x5302b8;};'use strict';var EventEmitter=require('events');var MailInteraction=require(_0x82e6('0x0'))['db'][_0x82e6('0x1')];var MailMessage=require('../../mysqldb')['db'][_0x82e6('0x2')];var MailInteractionEvents=new EventEmitter();MailInteractionEvents[_0x82e6('0x3')](0x0);var events={'afterCreate':'save','afterUpdate':_0x82e6('0x4'),'afterDestroy':_0x82e6('0x5')};function emitEvent(_0x346763){return function(_0x4440b9,_0x3269fb,_0x106132){_0x4440b9[_0x82e6('0x6')]({'attributes':['id'],'raw':!![]})['then'](function(_0x345e5c){_0x4440b9[_0x82e6('0x7')](_0x82e6('0x8'),_0x345e5c[_0x82e6('0x9')](function(_0xa8e0a2){return{'id':_0xa8e0a2['id']};}));return MailMessage[_0x82e6('0xa')]({'where':{'MailInteractionId':_0x4440b9['id'],'direction':'in','read':![]},'raw':!![]});})['then'](function(_0x1c2b8f){_0x4440b9[_0x82e6('0x7')]('unreadMessages',_0x1c2b8f[_0x82e6('0xb')]);MailInteractionEvents[_0x82e6('0xc')](_0x346763+':'+_0x4440b9['id'],_0x4440b9);MailInteractionEvents['emit'](_0x346763,_0x4440b9);_0x106132(null);})['catch'](_0x106132(null));};}for(var e in events){if(events[_0x82e6('0xd')](e)){var event=events[e];MailInteraction[_0x82e6('0xe')](e,emitEvent(event));}}module[_0x82e6('0xf')]=MailInteractionEvents;