Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 5e9c023..d048cae 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xba34=['ids','getMessages','MailInteractionId','format','YYYY-MM-DD\x20HH:mm:ss','true','rows','addTags','setTags','findAll','color','emit','mailInteractionTags:save','removeTags','download','unix','join','root','server','tmp','transcript-%d-%s.zip','Attachment','Messages','bcc','get','each','subject','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','basename','attachments','readFileSync','build','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','moment','bluebird','squel','juice','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../mysqldb','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','end','status','json','offset','undefined','limit','count','set','update','then','destroy','error','name','send','Users','map','fullname','TagIds','Tags','forEach','push','MailMessage','findOne','out','-id','plainBody','lastMsgText','trimStart','catch','talking','answered','unmanaged','closed','waiting','UserId','index','MailInteraction','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','hasOwnProperty','order','sort','where','pick','select','field','from','tools_tags','u.id','ui.MailInteractionId','user_has_mail_interactions','left_join','users','u.id\x20=\x20ui.UserId','mail_interactions','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.MailAccountId','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','sqlOperator','conditions','length','find','unreadMessages','value','having','`\x20=\x200','Contact','operator','$substring','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','some','compact','isEmpty','MailAccountId','concat','createdAt','$gte','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','tag','filter','replace','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','Sequelize','QueryTypes','SELECT','clone','DESC','t.id\x20IN\x20?','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','user','agent','i.MailAccountId\x20IS\x20NULL','i.MailAccountId\x20IN\x20?','sequelize','toString','keyBy','merge','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','a.mandatoryDisposition','CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20(\x27%\x27\x20+\x20a.email\x20+\x20\x27%\x27)\x20THEN\x20SUBSTRING_INDEX(i.to,\x20\x27<\x27,\x201)\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName','i.createdAt','i.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.subject','i.disposition','i.secondDisposition','i.thirdDisposition','i.substatus','i.ContactId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy','enableEmailPreview','all','show','params','includeAll','include','options','create','body','describe','omit'];(function(_0xf73c09,_0x4e424e){var _0xa8923c=function(_0x4831c1){while(--_0x4831c1){_0xf73c09['push'](_0xf73c09['shift']());}};_0xa8923c(++_0x4e424e);}(_0xba34,0x119));var _0x4ba3=function(_0x154c33,_0x1333df){_0x154c33=_0x154c33-0x0;var _0x2f357b=_0xba34[_0x154c33];return _0x2f357b;};'use strict';var emlformat=require(_0x4ba3('0x0'));var rimraf=require(_0x4ba3('0x1'));var zipdir=require(_0x4ba3('0x2'));var moment=require(_0x4ba3('0x3'));var BPromise=require(_0x4ba3('0x4'));var util=require('util');var path=require('path');var fs=require('fs');var _=require('lodash');var squel=require(_0x4ba3('0x5'));var juice=require(_0x4ba3('0x6'));var Redis=require(_0x4ba3('0x7'));var qs=require(_0x4ba3('0x8'));var as=require(_0x4ba3('0x9'));var logger=require(_0x4ba3('0xa'))(_0x4ba3('0xb'));var config=require('../../config/environment');var db=require(_0x4ba3('0xc'))['db'];var htmlEntities=require(_0x4ba3('0xd'));config[_0x4ba3('0xe')]=_[_0x4ba3('0xf')](config[_0x4ba3('0xe')],{'host':_0x4ba3('0x10'),'port':0x18eb});var socket=require(_0x4ba3('0x11'))(new Redis(config[_0x4ba3('0xe')]));require(_0x4ba3('0x12'))[_0x4ba3('0x13')](socket);function respondWithStatusCode(_0x2d215b,_0x51edab){_0x51edab=_0x51edab||0xcc;return function(_0x4619c5){if(_0x4619c5){return _0x2d215b[_0x4ba3('0x14')](_0x51edab);}return _0x2d215b['status'](_0x51edab)[_0x4ba3('0x15')]();};}function respondWithResult(_0x567709,_0x1073d4){_0x1073d4=_0x1073d4||0xc8;return function(_0x52f55c){if(_0x52f55c){return _0x567709[_0x4ba3('0x16')](_0x1073d4)[_0x4ba3('0x17')](_0x52f55c);}};}function respondWithFilteredResult(_0x29e498,_0x3515e9){return function(_0x2bc796){if(_0x2bc796){var _0x3d2ace=typeof _0x3515e9[_0x4ba3('0x18')]===_0x4ba3('0x19')&&typeof _0x3515e9[_0x4ba3('0x1a')]===_0x4ba3('0x19');var _0x36638b=_0x2bc796[_0x4ba3('0x1b')];var _0x29a9d1=_0x3d2ace?0x0:_0x3515e9[_0x4ba3('0x18')];var _0x40e75b=_0x3d2ace?_0x2bc796[_0x4ba3('0x1b')]:_0x3515e9['offset']+_0x3515e9[_0x4ba3('0x1a')];var _0x788277;if(_0x40e75b>=_0x36638b){_0x40e75b=_0x36638b;_0x788277=0xc8;}else{_0x788277=0xce;}_0x29e498[_0x4ba3('0x16')](_0x788277);return _0x29e498[_0x4ba3('0x1c')]('Content-Range',_0x29a9d1+'-'+_0x40e75b+'/'+_0x36638b)[_0x4ba3('0x17')](_0x2bc796);}return null;};}function saveUpdates(_0xe4eff9){return function(_0x70c677){if(_0x70c677){return _0x70c677[_0x4ba3('0x1d')](_0xe4eff9)[_0x4ba3('0x1e')](function(_0x125944){return _0x125944;});}return null;};}function removeEntity(_0x4b2791){return function(_0x57de6a){if(_0x57de6a){return _0x57de6a[_0x4ba3('0x1f')]()['then'](function(){_0x4b2791[_0x4ba3('0x16')](0xcc)[_0x4ba3('0x15')]();});}};}function handleEntityNotFound(_0x413bb3){return function(_0xbc7023){if(!_0xbc7023){_0x413bb3[_0x4ba3('0x14')](0x194);}return _0xbc7023;};}function handleError(_0x278a23,_0x4a0823){_0x4a0823=_0x4a0823||0x1f4;return function(_0x143c78){logger[_0x4ba3('0x20')](_0x143c78['stack']);if(_0x143c78[_0x4ba3('0x21')]){delete _0x143c78['name'];}_0x278a23[_0x4ba3('0x16')](_0x4a0823)[_0x4ba3('0x22')](_0x143c78);};}function getInteractionUsers(_0x11a917,_0x37e6f3){return new BPromise(function(_0x152e41,_0xe29a49){try{if(_0x37e6f3[_0x11a917['id']]){_0x11a917[_0x4ba3('0x23')]=_[_0x4ba3('0x24')](_0x37e6f3[_0x11a917['id']],function(_0x6cecf3){return{'id':_0x6cecf3['id'],'fullname':_0x6cecf3[_0x4ba3('0x25')]};});}}catch(_0x50c729){_0xe29a49(_0x50c729);}_0x152e41(_0x11a917);});}function getInteractionTags(_0x252f37,_0x13c353){return new BPromise(function(_0x2311ed,_0x5adaab){try{if(_0x252f37[_0x4ba3('0x26')]){_0x252f37[_0x4ba3('0x27')]=[];_0x252f37[_0x4ba3('0x26')]['split'](',')[_0x4ba3('0x28')](function(_0x843276){_0x252f37[_0x4ba3('0x27')][_0x4ba3('0x29')](_0x13c353[_0x843276]);});}delete _0x252f37['TagIds'];}catch(_0x590108){_0x5adaab(_0x590108);}_0x2311ed(_0x252f37);});}function getLastMessageText(_0x38ef88){return new BPromise(function(_0x33cad6,_0x15cfae){return db[_0x4ba3('0x2a')][_0x4ba3('0x2b')]({'where':{'$and':[{'MailInteractionId':_0x38ef88['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0x4ba3('0x2c')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':['plainBody'],'order':_0x4ba3('0x2d'),'raw':!![]})[_0x4ba3('0x1e')](function(_0x24d8fc){if(_0x24d8fc&&_0x24d8fc[_0x4ba3('0x2e')]){_0x38ef88[_0x4ba3('0x2f')]=_[_0x4ba3('0x30')](_0x24d8fc[_0x4ba3('0x2e')]);}_0x33cad6(_0x38ef88);})[_0x4ba3('0x31')](function(_0x133e76){_0x15cfae(_0x133e76);});});}function updateMailInteraction(_0x1abe8b,_0x4b40f3,_0x5a453f,_0x4e2af0){return new BPromise(function(_0x2d226a,_0xd033d7){return getInteractionUsers(_0x1abe8b,_0x5a453f)[_0x4ba3('0x1e')](function(_0x4372cb){return getInteractionTags(_0x4372cb,_0x4b40f3);})[_0x4ba3('0x1e')](function(_0x137f9b){return getStateInteraction(_0x137f9b);})[_0x4ba3('0x1e')](function(_0xe1abe8){if(_0x4e2af0){_0x2d226a(getLastMessageText(_0xe1abe8));}else{_0x2d226a(_0xe1abe8);}})[_0x4ba3('0x31')](function(_0x3dfe4b){_0xd033d7(_0x3dfe4b);});});}function getStateInteraction(_0x437a20){return new BPromise(function(_0x3439cb){_0x437a20['waiting']=0x0;_0x437a20[_0x4ba3('0x32')]=0x0;_0x437a20[_0x4ba3('0x33')]=0x0;_0x437a20[_0x4ba3('0x34')]=0x0;_0x437a20['total']=0x0;if(!_0x437a20[_0x4ba3('0x35')]&&!_0x437a20['UserId']){_0x437a20[_0x4ba3('0x36')]+=0x1;}if(!_0x437a20[_0x4ba3('0x35')]&&_0x437a20[_0x4ba3('0x37')]){_0x437a20[_0x4ba3('0x32')]+=0x1;if(_0x437a20[_0x4ba3('0x36')]){_0x437a20[_0x4ba3('0x36')]-=0x1;}}if(_0x437a20['closed']&&_0x437a20[_0x4ba3('0x37')]){_0x437a20[_0x4ba3('0x33')]+=0x1;if(_0x437a20[_0x4ba3('0x32')]){_0x437a20['talking']-=0x1;}}if(_0x437a20[_0x4ba3('0x35')]&&!_0x437a20[_0x4ba3('0x37')]){_0x437a20['unmanaged']+=0x1;if(_0x437a20[_0x4ba3('0x36')]){_0x437a20['waiting']-=0x1;}}_0x437a20['total']+=0x1;_0x3439cb(_0x437a20);});}exports[_0x4ba3('0x38')]=function(_0x1acc74,_0x38b64d){var _0x2b14e1={},_0x20ac88={},_0x59d535={'count':0x0,'rows':[]};var _0x3aeefd=_[_0x4ba3('0x24')](db[_0x4ba3('0x39')][_0x4ba3('0x3a')],function(_0xab7983){return{'name':_0xab7983[_0x4ba3('0x3b')],'type':_0xab7983[_0x4ba3('0x3c')][_0x4ba3('0x3d')]};});_0x20ac88['model']=_[_0x4ba3('0x24')](_0x3aeefd,_0x4ba3('0x21'));_0x20ac88[_0x4ba3('0x3e')]=_[_0x4ba3('0x3f')](_0x1acc74[_0x4ba3('0x3e')]);_0x20ac88[_0x4ba3('0x40')]=_[_0x4ba3('0x41')](_0x20ac88[_0x4ba3('0x42')],_0x20ac88[_0x4ba3('0x3e')]);_0x2b14e1[_0x4ba3('0x43')]=_[_0x4ba3('0x41')](_0x20ac88[_0x4ba3('0x42')],qs[_0x4ba3('0x44')](_0x1acc74[_0x4ba3('0x3e')]['fields']));_0x2b14e1['attributes']=_0x2b14e1['attributes']['length']?_0x2b14e1['attributes']:_0x20ac88[_0x4ba3('0x42')];if(!_0x1acc74['query'][_0x4ba3('0x45')]('nolimit')){_0x2b14e1[_0x4ba3('0x1a')]=qs[_0x4ba3('0x1a')](_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x1a')]);_0x2b14e1[_0x4ba3('0x18')]=qs['offset'](_0x1acc74[_0x4ba3('0x3e')]['offset']);}_0x2b14e1[_0x4ba3('0x46')]=qs['sort'](_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x47')]);_0x2b14e1[_0x4ba3('0x48')]=qs[_0x4ba3('0x40')](_[_0x4ba3('0x49')](_0x1acc74[_0x4ba3('0x3e')],_0x20ac88[_0x4ba3('0x40')]),_0x3aeefd);var _0x5d5714=[];var _0xc3652a=squel[_0x4ba3('0x4a')]()[_0x4ba3('0x4b')]('id')[_0x4ba3('0x4b')](_0x4ba3('0x21'))['field']('color')[_0x4ba3('0x4c')](_0x4ba3('0x4d'));var _0x18617b=squel['select']()[_0x4ba3('0x4b')](_0x4ba3('0x4e'))[_0x4ba3('0x4b')]('u.fullname')['field'](_0x4ba3('0x4f'))['from'](_0x4ba3('0x50'),'ui')[_0x4ba3('0x51')](_0x4ba3('0x52'),'u',_0x4ba3('0x53'));var _0x3d7b9d=squel[_0x4ba3('0x4a')]()['from'](_0x4ba3('0x54'),'i')[_0x4ba3('0x51')]('cm_contacts','c',_0x4ba3('0x55'))[_0x4ba3('0x51')](_0x4ba3('0x52'),'o',_0x4ba3('0x56'))[_0x4ba3('0x51')]('mail_accounts','a',_0x4ba3('0x57'))[_0x4ba3('0x51')]('mail_messages','me',_0x4ba3('0x58'))[_0x4ba3('0x51')](_0x4ba3('0x59'),'it',_0x4ba3('0x5a'))[_0x4ba3('0x51')](_0x4ba3('0x4d'),'t',_0x4ba3('0x5b'));var _0x1ab3fe=squel[_0x4ba3('0x5c')]();var _0x428a27=[];var _0x6ad6aa=squel[_0x4ba3('0x5c')]();var _0x438ce3;if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x5d')]){_0x438ce3=as['parseSearch'](_0x1acc74['query']['search']);var _0x14c014=_0x438ce3[_0x4ba3('0x5e')];for(var _0xf0fa9e=0x0;_0xf0fa9e<_0x438ce3[_0x4ba3('0x5f')][_0x4ba3('0x60')];_0xf0fa9e++){var _0x57e25a=_0x438ce3[_0x4ba3('0x5f')][_0xf0fa9e];var _0x4620ae='i';var _0x273141=_[_0x4ba3('0x61')](_0x3aeefd,[_0x4ba3('0x21'),_0x57e25a[_0x4ba3('0x4b')]]);if(!_0x273141){switch(_0x57e25a[_0x4ba3('0x4b')]){case _0x4ba3('0x62'):if(_0x57e25a[_0x4ba3('0x63')]==0x1){_0x3d7b9d[_0x4ba3('0x64')]('`'+_0x57e25a[_0x4ba3('0x4b')]+_0x4ba3('0x65'));}else{_0x3d7b9d[_0x4ba3('0x64')]('`'+_0x57e25a[_0x4ba3('0x4b')]+'`\x20>\x200');}break;case _0x4ba3('0x66'):if(_0x57e25a[_0x4ba3('0x67')]===_0x4ba3('0x68')){if(_0x57e25a[_0x4ba3('0x63')][_0x4ba3('0x69')]('\x20')[_0x4ba3('0x60')]>0x1){_0x1ab3fe[_0x14c014](_0x4ba3('0x6a'),qs[_0x4ba3('0x6b')](_0x57e25a['value']),null);}else{var _0x8ea419='%'+_0x57e25a[_0x4ba3('0x63')]+'%';_0x1ab3fe[_0x14c014](_0x4ba3('0x6c'),_0x8ea419,_0x8ea419,_0x8ea419);}}else{_0x273141=_['find'](_0x3aeefd,[_0x4ba3('0x21'),'ContactId']);_0x57e25a[_0x4ba3('0x4b')]=_0x4ba3('0x6d');_0x2c0408=as[_0x4ba3('0x6e')](_0x4620ae,_0x273141[_0x4ba3('0x3c')],_0x57e25a);_0x1ab3fe[_0x14c014](_0x2c0408[_0x4ba3('0x6f')],_0x2c0408['value'][_0x4ba3('0x70')],_0x2c0408[_0x4ba3('0x63')][_0x4ba3('0x15')]);}break;case _0x4ba3('0x71'):var _0x27b2b7=_0x57e25a['value'][_0x4ba3('0x69')](',')[_0x4ba3('0x24')](function(_0x34cc21){return Number(_0x34cc21);});_0x27b2b7[_0x4ba3('0x28')](function(_0x454a0a){_0x6ad6aa['or'](_0x4ba3('0x72'),'%,'+_0x454a0a+',%');});_0x428a27=_[_0x4ba3('0x73')](_0x428a27,_0x27b2b7);break;case _0x4ba3('0x74'):if(_0x57e25a[_0x4ba3('0x67')]===_0x4ba3('0x68')){_0x1ab3fe[_0x14c014](_0x4ba3('0x75'),'%'+_0x57e25a['value']+'%',null);}else{_0x273141=_[_0x4ba3('0x61')](_0x3aeefd,[_0x4ba3('0x21'),'UserId']);_0x57e25a['field']=_0x4ba3('0x37');_0x2c0408=as[_0x4ba3('0x6e')](_0x4620ae,_0x273141['type'],_0x57e25a);_0x1ab3fe[_0x14c014](_0x2c0408[_0x4ba3('0x6f')],_0x2c0408[_0x4ba3('0x63')][_0x4ba3('0x70')],_0x2c0408['value'][_0x4ba3('0x15')]);}break;case _0x4ba3('0x2e'):_0x2c0408=as[_0x4ba3('0x6e')]('me',null,_0x57e25a);_0x1ab3fe[_0x14c014](_0x2c0408[_0x4ba3('0x6f')],_0x2c0408[_0x4ba3('0x63')][_0x4ba3('0x70')],_0x2c0408['value'][_0x4ba3('0x15')]);break;}}else{var _0x2c0408=as[_0x4ba3('0x6e')](_0x4620ae,_0x273141['type'],_0x57e25a);_0x1ab3fe[_0x14c014](_0x2c0408[_0x4ba3('0x6f')],_0x2c0408[_0x4ba3('0x63')][_0x4ba3('0x70')],_0x2c0408[_0x4ba3('0x63')][_0x4ba3('0x15')]);}}}else{var _0x2d75a3=_(_0x1acc74[_0x4ba3('0x3e')])[_0x4ba3('0x3f')]()['map'](function(_0x540f5c){return _[_0x4ba3('0x76')](_0x3aeefd,['name',_0x540f5c])?_0x540f5c:undefined;})[_0x4ba3('0x77')]()[_0x4ba3('0x63')]();if(!_[_0x4ba3('0x78')](_0x2d75a3)){_0x2d75a3['forEach'](function(_0x36f8a9){if(_0x36f8a9===_0x4ba3('0x79')){_0x3d7b9d[_0x4ba3('0x48')]('i.MailAccountId\x20IN\x20?',[][_0x4ba3('0x7a')](_0x1acc74['query'][_0x36f8a9]));}else if(_0x36f8a9===_0x4ba3('0x7b')){var _0x247352=JSON['parse'](_0x1acc74[_0x4ba3('0x3e')][_0x36f8a9])[_0x4ba3('0x7c')];var _0x3e566d=JSON[_0x4ba3('0x7d')](_0x1acc74[_0x4ba3('0x3e')][_0x36f8a9])[_0x4ba3('0x7e')];_0x3d7b9d[_0x4ba3('0x48')](_0x4ba3('0x7f'),_0x247352,_0x3e566d);}else{if(_0x1acc74[_0x4ba3('0x3e')][_0x36f8a9]==='null'){_0x3d7b9d[_0x4ba3('0x48')]('i.'+_0x36f8a9+_0x4ba3('0x80'));}else{_0x3d7b9d[_0x4ba3('0x48')]('i.'+_0x36f8a9+_0x4ba3('0x81'),_0x1acc74[_0x4ba3('0x3e')][_0x36f8a9]);}}});}if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x82')]){if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x82')]==0x1){_0x3d7b9d[_0x4ba3('0x64')](_0x4ba3('0x83'));}else{_0x3d7b9d[_0x4ba3('0x64')]('`unreadMessages`\x20>\x200');}}if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x84')]){_0x428a27=_['isArray'](_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x84')])?_0x1acc74['query']['tag']:new Array(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x84')]);_0x428a27[_0x4ba3('0x28')](function(_0x1be0ed){_0x6ad6aa['or'](_0x4ba3('0x72'),'%,'+_0x1be0ed+',%');});}if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x85')]){var _0x1246bc=_0x1acc74['query'][_0x4ba3('0x85')]['replace']('\x5c','\x5c\x5c')[_0x4ba3('0x86')](/'/g,'\x27\x27');if(qs[_0x4ba3('0x87')](_0x1246bc)){_0x1ab3fe['or'](_0x4ba3('0x88'),_0x1246bc+'%');}else if(qs[_0x4ba3('0x89')](_0x1246bc)){_0x1ab3fe['or'](_0x4ba3('0x8a'),_0x1246bc+'%');}else{_0x1ab3fe['or'](_0x4ba3('0x8b'),qs[_0x4ba3('0x6b')](_0x1246bc))['or'](_0x4ba3('0x8c'),qs['getFullTextValue'](_0x1246bc));}}}_0x3d7b9d[_0x4ba3('0x48')](_0x1ab3fe);_0x3d7b9d[_0x4ba3('0x8d')](_0x4ba3('0x8e'));var _0x5a1872={'type':db[_0x4ba3('0x8f')][_0x4ba3('0x90')][_0x4ba3('0x91')],'raw':!![]};var _0x39d428=_0x3d7b9d[_0x4ba3('0x92')]();_0x39d428[_0x4ba3('0x4b')](_0x4ba3('0x8e'));_0x39d428['field']('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x4ba3('0x62'));if(_0x2b14e1['order']){_0x2b14e1[_0x4ba3('0x46')][_0x4ba3('0x28')](function(_0x108679){var _0x20f7db=_0x108679[0x0]==='contactName'?_0x108679[0x0]:'i.'+_0x108679[0x0];_0x3d7b9d['order'](_0x20f7db,_0x108679[0x1]===_0x4ba3('0x93')?![]:!![]);});}if(!_[_0x4ba3('0x78')](_0x428a27)){_0x3d7b9d['having'](_0x6ad6aa);_0x39d428[_0x4ba3('0x48')](_0x4ba3('0x94'),_0x428a27);}BPromise[_0x4ba3('0x95')]()[_0x4ba3('0x1e')](function(){if(!_0x438ce3){if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x79')])return;_0x39d428[_0x4ba3('0x48')]('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x3d7b9d[_0x4ba3('0x48')](_0x4ba3('0x96'));return;}if(_0x1acc74[_0x4ba3('0x97')]['role']!==_0x4ba3('0x98'))return;return _0x1acc74[_0x4ba3('0x97')]['getMailAccounts']({'attributes':['id'],'raw':!![]})[_0x4ba3('0x1e')](function(_0x15cb27){if(_['isEmpty'](_0x15cb27)){_0x39d428['where']('i.MailAccountId\x20IS\x20NULL');_0x3d7b9d['where'](_0x4ba3('0x99'));}else{_0x39d428[_0x4ba3('0x48')](_0x4ba3('0x9a'),_[_0x4ba3('0x24')](_0x15cb27,'id'));_0x3d7b9d[_0x4ba3('0x48')](_0x4ba3('0x9a'),_[_0x4ba3('0x24')](_0x15cb27,'id'));}});})['then'](function(){if(_0x1acc74[_0x4ba3('0x97')]['role']===_0x4ba3('0x98')&&!_0x438ce3&&!_0x1acc74['query'][_0x4ba3('0x79')])return[];return db[_0x4ba3('0x9b')][_0x4ba3('0x3e')](_0x39d428[_0x4ba3('0x9c')](),_0x5a1872);})[_0x4ba3('0x1e')](function(_0x5bbea3){_0x59d535['count']=_0x5bbea3[_0x4ba3('0x60')];if(_0x59d535[_0x4ba3('0x1b')]===0x0)return[];return db[_0x4ba3('0x9b')][_0x4ba3('0x3e')](_0xc3652a[_0x4ba3('0x9c')](),_0x5a1872)[_0x4ba3('0x1e')](function(_0x7ec030){_0x5d5714=_[_0x4ba3('0x9d')](_0x7ec030,'id');_0x5a1872=_[_0x4ba3('0x9e')](_0x5a1872,{'model':db[_0x4ba3('0x39')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x1acc74[_0x4ba3('0x3e')][_0x4ba3('0x44')]){_0x2b14e1['attributes'][_0x4ba3('0x28')](function(_0x4cdc16){_0x3d7b9d[_0x4ba3('0x4b')]('i.'+_0x4cdc16);});}else{_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0x9f'),_0x4ba3('0x62'));_0x3d7b9d['field'](_0x4ba3('0xa0'),_0x4ba3('0xa1'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xa2'),'Account.mandatoryDisposition');_0x3d7b9d['field'](_0x4ba3('0xa3'),_0x4ba3('0xa4'));_0x3d7b9d[_0x4ba3('0x4b')]('i.id');_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xa5'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xa6'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xa7'));_0x3d7b9d['field'](_0x4ba3('0xa8'));_0x3d7b9d['field'](_0x4ba3('0xa9'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xaa'));_0x3d7b9d[_0x4ba3('0x4b')]('i.lastMsgDirection');_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xab'));_0x3d7b9d['field'](_0x4ba3('0xac'));_0x3d7b9d['field'](_0x4ba3('0xad'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xae'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xaf'));_0x3d7b9d['field']('i.to');_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xb0'));_0x3d7b9d[_0x4ba3('0x4b')]('i.MailAccountId');_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xb1'));_0x3d7b9d['field'](_0x4ba3('0xb2'),_0x4ba3('0xb3'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xb4'),_0x4ba3('0xb5'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xb6'),_0x4ba3('0xb7'));_0x3d7b9d['field'](_0x4ba3('0xb8'),_0x4ba3('0xb9'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xba'),_0x4ba3('0xbb'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xbc'),_0x4ba3('0xbd'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xbe'),_0x4ba3('0xbf'));_0x3d7b9d[_0x4ba3('0x4b')](_0x4ba3('0xc0'),'Owner.internal');_0x3d7b9d['field'](_0x4ba3('0xc1'),_0x4ba3('0x26'));}if(_0x2b14e1[_0x4ba3('0x1a')])_0x3d7b9d[_0x4ba3('0x1a')](_0x2b14e1[_0x4ba3('0x1a')]);if(_0x2b14e1[_0x4ba3('0x18')])_0x3d7b9d[_0x4ba3('0x18')](_0x2b14e1['offset']);return db['sequelize'][_0x4ba3('0x3e')](_0x3d7b9d[_0x4ba3('0x9c')](),_0x5a1872);})['then'](function(_0x4fb6b5){if(_0x4fb6b5['length']>0x0)_0x18617b['where'](_0x4ba3('0xc2'),_[_0x4ba3('0x24')](_0x4fb6b5,'id'));return db[_0x4ba3('0x9b')][_0x4ba3('0x3e')](_0x18617b[_0x4ba3('0x9c')](),_0x5a1872)['then'](function(_0x39334b){var _0x1097ee=_[_0x4ba3('0xc3')](_0x39334b,'MailInteractionId');var _0x52508d=[];return db['Setting']['findOne']({'attributes':[_0x4ba3('0xc4')],'raw':!![]})[_0x4ba3('0x1e')](function(_0x31ae17){var _0x1770ac=_0x31ae17[_0x4ba3('0xc4')];_0x4fb6b5['forEach'](function(_0x36fd3f){_0x52508d['push'](updateMailInteraction(_0x36fd3f,_0x5d5714,_0x1097ee,_0x1770ac));});return BPromise[_0x4ba3('0xc5')](_0x52508d);});});});})[_0x4ba3('0x1e')](function(_0x1a31da){_0x59d535['rows']=_0x1a31da;return _0x59d535;})[_0x4ba3('0x1e')](respondWithFilteredResult(_0x38b64d,_0x2b14e1))[_0x4ba3('0x31')](handleError(_0x38b64d,null));};exports[_0x4ba3('0xc6')]=function(_0x7d9cbd,_0x4b62fa){var _0x56a70d={'raw':![],'where':{'id':_0x7d9cbd[_0x4ba3('0xc7')]['id']}},_0xcabebc={};_0xcabebc['model']=_[_0x4ba3('0x3f')](db['MailInteraction']['rawAttributes']);_0xcabebc['query']=_['keys'](_0x7d9cbd[_0x4ba3('0x3e')]);_0xcabebc[_0x4ba3('0x40')]=_[_0x4ba3('0x41')](_0xcabebc[_0x4ba3('0x42')],_0xcabebc[_0x4ba3('0x3e')]);_0x56a70d['attributes']=_['intersection'](_0xcabebc[_0x4ba3('0x42')],qs['fields'](_0x7d9cbd[_0x4ba3('0x3e')][_0x4ba3('0x44')]));_0x56a70d[_0x4ba3('0x43')]=_0x56a70d['attributes'][_0x4ba3('0x60')]?_0x56a70d[_0x4ba3('0x43')]:_0xcabebc[_0x4ba3('0x42')];if(_0x7d9cbd[_0x4ba3('0x3e')][_0x4ba3('0xc8')]){_0x56a70d[_0x4ba3('0xc9')]=[{'all':!![]}];}_0x56a70d=_[_0x4ba3('0x9e')]({},_0x56a70d,_0x7d9cbd[_0x4ba3('0xca')]);return db[_0x4ba3('0x39')]['find'](_0x56a70d)['then'](handleEntityNotFound(_0x4b62fa,null))[_0x4ba3('0x1e')](respondWithResult(_0x4b62fa,null))[_0x4ba3('0x31')](handleError(_0x4b62fa,null));};exports[_0x4ba3('0xcb')]=function(_0xf549d7,_0xe2d9e){return db[_0x4ba3('0x39')]['create'](_0xf549d7[_0x4ba3('0xcc')],{})[_0x4ba3('0x1e')](respondWithResult(_0xe2d9e,0xc9))['catch'](handleError(_0xe2d9e,null));};exports[_0x4ba3('0x1d')]=function(_0x229736,_0x295e79){if(_0x229736[_0x4ba3('0xcc')]['id']){delete _0x229736[_0x4ba3('0xcc')]['id'];}return db[_0x4ba3('0x39')][_0x4ba3('0x61')]({'where':{'id':_0x229736[_0x4ba3('0xc7')]['id']}})[_0x4ba3('0x1e')](handleEntityNotFound(_0x295e79,null))[_0x4ba3('0x1e')](saveUpdates(_0x229736[_0x4ba3('0xcc')],null))[_0x4ba3('0x1e')](respondWithResult(_0x295e79,null))[_0x4ba3('0x31')](handleError(_0x295e79,null));};exports[_0x4ba3('0x1f')]=function(_0x2e812b,_0x4e1f1b){return db[_0x4ba3('0x39')][_0x4ba3('0x61')]({'where':{'id':_0x2e812b['params']['id']}})[_0x4ba3('0x1e')](handleEntityNotFound(_0x4e1f1b,null))['then'](removeEntity(_0x4e1f1b,null))[_0x4ba3('0x31')](handleError(_0x4e1f1b,null));};exports[_0x4ba3('0xcd')]=function(_0x4f61ed,_0x5dc74f){return db[_0x4ba3('0x39')]['describe']()[_0x4ba3('0x1e')](respondWithResult(_0x5dc74f,null))[_0x4ba3('0x31')](handleError(_0x5dc74f,null));};exports['addMessage']=function(_0x1590f0,_0x5efab9){return db[_0x4ba3('0x2a')][_0x4ba3('0x61')]({'where':{'id':_0x1590f0[_0x4ba3('0xc7')]['id']}})['then'](handleEntityNotFound(_0x5efab9,null))[_0x4ba3('0x1e')](function(_0x4d3262){if(_0x4d3262){return _0x4d3262['addMessage'](_0x1590f0[_0x4ba3('0xcc')]['ids'],_[_0x4ba3('0xce')](_0x1590f0[_0x4ba3('0xcc')],[_0x4ba3('0xcf'),'id'])||{});}})['then'](respondWithResult(_0x5efab9,null))['catch'](handleError(_0x5efab9,null));};exports[_0x4ba3('0xd0')]=function(_0x1a7ab2,_0x1730b4){var _0xb36acf={'raw':![],'where':{}};var _0x41231a={};var _0x4cc027={'count':0x0,'rows':[]};return db[_0x4ba3('0x39')][_0x4ba3('0x2b')]({'where':{'id':_0x1a7ab2[_0x4ba3('0xc7')]['id']}})[_0x4ba3('0x1e')](handleEntityNotFound(_0x1730b4,null))['then'](function(_0x32c5e9){if(_0x32c5e9){_0x41231a[_0x4ba3('0x42')]=_[_0x4ba3('0x3f')](db[_0x4ba3('0x2a')][_0x4ba3('0x3a')]);_0x41231a[_0x4ba3('0x3e')]=_[_0x4ba3('0x3f')](_0x1a7ab2[_0x4ba3('0x3e')]);_0x41231a[_0x4ba3('0x40')]=_[_0x4ba3('0x41')](_0x41231a[_0x4ba3('0x42')],_0x41231a['query']);_0xb36acf[_0x4ba3('0x43')]=_[_0x4ba3('0x41')](_0x41231a['model'],qs[_0x4ba3('0x44')](_0x1a7ab2['query'][_0x4ba3('0x44')]));_0xb36acf[_0x4ba3('0x43')]=_0xb36acf[_0x4ba3('0x43')][_0x4ba3('0x60')]?_0xb36acf['attributes']:_0x41231a['model'];if(!_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x45')]('nolimit')){_0xb36acf[_0x4ba3('0x1a')]=qs[_0x4ba3('0x1a')](_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x1a')]);_0xb36acf['offset']=qs[_0x4ba3('0x18')](_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x18')]);}_0xb36acf[_0x4ba3('0x46')]=qs['sort'](_0x1a7ab2[_0x4ba3('0x3e')]['sort']);_0xb36acf[_0x4ba3('0x48')]=qs[_0x4ba3('0x40')](_[_0x4ba3('0x49')](_0x1a7ab2[_0x4ba3('0x3e')],_0x41231a['filters']));_0xb36acf['where'][_0x4ba3('0xd1')]=_0x32c5e9['id'];if(_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x85')]){_0xb36acf['where']=_['merge'](_0xb36acf[_0x4ba3('0x48')],{'$or':_[_0x4ba3('0x24')](_0xb36acf[_0x4ba3('0x43')],function(_0x44a3cd){var _0x4b9543={};_0x4b9543[_0x44a3cd]={'$like':'%'+_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x85')]+'%'};return _0x4b9543;})});}if(_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x7c')]){var _0x2963dd=_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0x7c')][_0x4ba3('0x69')](',');var _0x741013={};_0x741013[_0x2963dd[0x0]]={'$gte':moment(_0x2963dd[0x1])[_0x4ba3('0xd2')](_0x4ba3('0xd3'))};_0xb36acf[_0x4ba3('0x48')]=_[_0x4ba3('0x9e')](_0xb36acf[_0x4ba3('0x48')],_0x741013);}_0xb36acf=_[_0x4ba3('0x9e')]({},_0xb36acf,_0x1a7ab2[_0x4ba3('0xca')]);return db[_0x4ba3('0x2a')][_0x4ba3('0x1b')]({'where':_0xb36acf['where']})[_0x4ba3('0x1e')](function(_0x2ba147){_0x4cc027[_0x4ba3('0x1b')]=_0x2ba147;if(_0x1a7ab2[_0x4ba3('0x3e')][_0x4ba3('0xc8')]){_0xb36acf[_0x4ba3('0xc9')]=[{'all':!![]}];}return db['MailMessage']['findAll'](_0xb36acf);})[_0x4ba3('0x1e')](function(_0x1c0dda){if(_0x1a7ab2[_0x4ba3('0x3e')]['inlineCss']===_0x4ba3('0xd4')){for(var _0x343a95=0x0;_0x343a95<_0x1c0dda[_0x4ba3('0x60')];_0x343a95++){_0x1c0dda[_0x343a95][_0x4ba3('0xcc')]=juice(_0x1c0dda[_0x343a95][_0x4ba3('0xcc')]);}}_0x4cc027[_0x4ba3('0xd5')]=_0x1c0dda;return _0x4cc027;});}})[_0x4ba3('0x1e')](respondWithFilteredResult(_0x1730b4,_0xb36acf))[_0x4ba3('0x31')](handleError(_0x1730b4,null));};exports[_0x4ba3('0xd6')]=function(_0x5a645c,_0x3c935c){return db['MailInteraction']['find']({'where':{'id':_0x5a645c[_0x4ba3('0xc7')]['id']}})[_0x4ba3('0x1e')](handleEntityNotFound(_0x3c935c,null))['then'](function(_0x1bcfa9){if(_0x1bcfa9){return _0x1bcfa9[_0x4ba3('0xd7')](_0x5a645c[_0x4ba3('0xcc')][_0x4ba3('0xcf')],_[_0x4ba3('0xce')](_0x5a645c[_0x4ba3('0xcc')],[_0x4ba3('0xcf'),'id'])||{})['spread'](function(){return db[_0x4ba3('0x71')][_0x4ba3('0xd8')]({'attributes':['id',_0x4ba3('0x21'),_0x4ba3('0xd9')],'where':{'id':_0x5a645c[_0x4ba3('0xcc')]['ids']}});})[_0x4ba3('0x1e')](function(_0x524fbc){socket[_0x4ba3('0xda')](_0x4ba3('0xdb'),{'id':Number(_0x5a645c['params']['id']),'tags':_0x524fbc||[]});return{'id':Number(_0x5a645c[_0x4ba3('0xc7')]['id']),'tags':_0x524fbc||[]};});}})[_0x4ba3('0x1e')](respondWithResult(_0x3c935c,null))[_0x4ba3('0x31')](handleError(_0x3c935c,null));};exports[_0x4ba3('0xdc')]=function(_0x1bab2b,_0x5d5dae){return db['MailInteraction'][_0x4ba3('0x61')]({'where':{'id':_0x1bab2b[_0x4ba3('0xc7')]['id']}})[_0x4ba3('0x1e')](handleEntityNotFound(_0x5d5dae,null))['then'](function(_0xc9e811){if(_0xc9e811){return _0xc9e811['removeTags'](_0x1bab2b[_0x4ba3('0x3e')][_0x4ba3('0xcf')]);}})[_0x4ba3('0x1e')](respondWithStatusCode(_0x5d5dae,null))[_0x4ba3('0x31')](handleError(_0x5d5dae,null));};exports[_0x4ba3('0xdd')]=function(_0x33c5c9,_0x5c3d91){var _0x3f4bb9=moment()[_0x4ba3('0xde')]()['toString']();var _0x5a68f4=path[_0x4ba3('0xdf')](config[_0x4ba3('0xe0')],_0x4ba3('0xe1'),'files',_0x4ba3('0xe2'));var _0x23560e=path[_0x4ba3('0xdf')](config[_0x4ba3('0xe0')],_0x4ba3('0xe1'),'files','attachments');var _0x50e79f=path[_0x4ba3('0xdf')](_0x5a68f4,_0x3f4bb9);var _0x53ca8d=util[_0x4ba3('0xd2')](_0x4ba3('0xe3'),_0x33c5c9[_0x4ba3('0xc7')]['id'],_0x3f4bb9);var _0x4df2aa=path[_0x4ba3('0xdf')](_0x5a68f4,_0x53ca8d);var _0x138acb=[];if(_0x33c5c9[_0x4ba3('0x3e')]['attachments']){_0x138acb['push']({'model':db[_0x4ba3('0xe4')],'as':'Attachments','raw':!![]});}var _0xba2542=[{'model':db[_0x4ba3('0x2a')],'as':_0x4ba3('0xe5'),'attributes':['id','body','from','to','cc',_0x4ba3('0xe6'),'subject',_0x4ba3('0x7b')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x138acb}];return db['MailInteraction'][_0x4ba3('0x61')]({'where':{'id':_0x33c5c9[_0x4ba3('0xc7')]['id']},'include':_0xba2542})['then'](handleEntityNotFound(_0x5c3d91,null))[_0x4ba3('0x1e')](function(_0x4b84ad){if(_0x4b84ad&&_0x4b84ad[_0x4ba3('0xe5')]){var _0x5840d6=_0x4b84ad[_0x4ba3('0xe7')]({'plain':!![]});fs['mkdirSync'](_0x50e79f);return BPromise[_0x4ba3('0xe8')](_0x5840d6[_0x4ba3('0xe5')],function(_0x336576,_0x3a8abc){var _0x4e5ee4={'from':_0x336576[_0x4ba3('0x4c')],'to':_0x336576['to'],'subject':_0x336576[_0x4ba3('0xe9')],'html':htmlEntities['decode'](_0x336576['body']),'headers':{'Date':moment(_0x336576[_0x4ba3('0x7b')])[_0x4ba3('0xd2')](_0x4ba3('0xea'))},'attachments':[]};if(_0x336576['cc']){_0x4e5ee4[_0x4ba3('0xeb')]['Cc']=_0x336576['cc'];}if(_0x336576[_0x4ba3('0xe6')]){_0x4e5ee4[_0x4ba3('0xeb')][_0x4ba3('0xec')]=_0x336576['bcc'];}return new BPromise(function(_0x3bf3b2,_0x142b09){if(_0x336576[_0x4ba3('0xed')]){for(var _0x112017=0x0;_0x112017<_0x336576['Attachments'][_0x4ba3('0x60')];_0x112017++){var _0x6cb38f=_0x336576[_0x4ba3('0xed')][_0x112017];var _0x580781=path[_0x4ba3('0xdf')](_0x23560e,_0x6cb38f[_0x4ba3('0xee')]);if(fs['existsSync'](_0x580781)){_0x4e5ee4[_0x4ba3('0xef')][_0x4ba3('0x29')]({'name':_0x6cb38f[_0x4ba3('0x21')],'contentType':_0x6cb38f[_0x4ba3('0x3c')],'data':fs[_0x4ba3('0xf0')](_0x580781)});}}}emlformat[_0x4ba3('0xf1')](_0x4e5ee4,function(_0x3b3d77,_0x3e7914){if(_0x3b3d77)return _0x142b09(_0x3b3d77);fs['writeFileSync'](path['join'](_0x50e79f,util[_0x4ba3('0xd2')](_0x4ba3('0xf2'),_0x3a8abc)),_0x3e7914);return _0x3bf3b2(_0x3e7914);});});})[_0x4ba3('0x1e')](function(){return new BPromise(function(_0x2dac25,_0x54c457){zipdir(_0x50e79f,{'saveTo':_0x4df2aa},function(_0x3446cc,_0xce6982){if(_0x3446cc)return _0x54c457(_0x3446cc);return _0x2dac25(_0xce6982);});})[_0x4ba3('0x1e')](function(){return new BPromise(function(_0x46ca6b,_0x54fa39){rimraf(_0x50e79f,function(_0xe89c1c){if(_0xe89c1c)_0x54fa39(_0xe89c1c);return _0x46ca6b();});});})[_0x4ba3('0x1e')](function(){return _0x5c3d91[_0x4ba3('0xdd')](_0x4df2aa,_0x53ca8d,function(_0x41de51){if(!_0x41de51)fs[_0x4ba3('0xf3')](_0x4df2aa);});});});}else{return _0x5c3d91[_0x4ba3('0x14')](0xc8);}})['catch'](handleError(_0x5c3d91,null));};
\ No newline at end of file
+var _0xa3d6=['true','rows','addTags','omit','color','emit','mailInteractionTags:save','unix','toString','join','server','files','root','attachments','transcript-%d-%s.zip','push','Attachment','Attachments','Messages','from','subject','get','missing.recipient@your.company.com','decode','createdAt','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','basename','existsSync','build','writeFileSync','message%d.eml','download','unlinkSync','eml-format','rimraf','zip-dir','moment','bluebird','util','path','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','html-entities','redis','defaults','localhost','./mailInteraction.socket','sendStatus','status','json','offset','undefined','count','limit','set','update','then','end','stack','name','send','index','map','MailInteraction','rawAttributes','fieldName','type','key','findAll','mail','query','user','catch','show','model','keys','filters','intersection','attributes','fields','length','merge','options','find','body','params','destroy','describe','addMessage','MailMessage','ids','findOne','hasOwnProperty','nolimit','order','sort','where','filter','$gte','split','format','includeAll','include','inlineCss'];(function(_0x2d7e66,_0x44633c){var _0x58b07c=function(_0x28d399){while(--_0x28d399){_0x2d7e66['push'](_0x2d7e66['shift']());}};_0x58b07c(++_0x44633c);}(_0xa3d6,0x92));var _0x6a3d=function(_0x4f9e17,_0x4cf03f){_0x4f9e17=_0x4f9e17-0x0;var _0x4e7af7=_0xa3d6[_0x4f9e17];return _0x4e7af7;};'use strict';var emlformat=require(_0x6a3d('0x0'));var rimraf=require(_0x6a3d('0x1'));var zipdir=require(_0x6a3d('0x2'));var moment=require(_0x6a3d('0x3'));var BPromise=require(_0x6a3d('0x4'));var util=require(_0x6a3d('0x5'));var path=require(_0x6a3d('0x6'));var fs=require('fs');var _=require(_0x6a3d('0x7'));var juice=require(_0x6a3d('0x8'));var Redis=require(_0x6a3d('0x9'));var interaction=require('../../components/interaction/service');var qs=require(_0x6a3d('0xa'));var logger=require(_0x6a3d('0xb'))(_0x6a3d('0xc'));var config=require(_0x6a3d('0xd'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0x6a3d('0xe'));config[_0x6a3d('0xf')]=_[_0x6a3d('0x10')](config[_0x6a3d('0xf')],{'host':_0x6a3d('0x11'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x6a3d('0xf')]));require(_0x6a3d('0x12'))['register'](socket);function respondWithStatusCode(_0x1a03bf,_0x18651d){_0x18651d=_0x18651d||0xcc;return function(_0x23faf5){if(_0x23faf5){return _0x1a03bf[_0x6a3d('0x13')](_0x18651d);}return _0x1a03bf['status'](_0x18651d)['end']();};}function respondWithResult(_0x59cb2c,_0x26b847){_0x26b847=_0x26b847||0xc8;return function(_0x12b98d){if(_0x12b98d){return _0x59cb2c[_0x6a3d('0x14')](_0x26b847)[_0x6a3d('0x15')](_0x12b98d);}};}function respondWithFilteredResult(_0x238ed3,_0x4346c9){return function(_0x11765c){if(_0x11765c){var _0x433e52=typeof _0x4346c9[_0x6a3d('0x16')]===_0x6a3d('0x17')&&typeof _0x4346c9['limit']===_0x6a3d('0x17');var _0x56f719=_0x11765c[_0x6a3d('0x18')];var _0x5b6a11=_0x433e52?0x0:_0x4346c9[_0x6a3d('0x16')];var _0x4b46e3=_0x433e52?_0x11765c['count']:_0x4346c9[_0x6a3d('0x16')]+_0x4346c9[_0x6a3d('0x19')];var _0x23edc5;if(_0x4b46e3>=_0x56f719){_0x4b46e3=_0x56f719;_0x23edc5=0xc8;}else{_0x23edc5=0xce;}_0x238ed3[_0x6a3d('0x14')](_0x23edc5);return _0x238ed3[_0x6a3d('0x1a')]('Content-Range',_0x5b6a11+'-'+_0x4b46e3+'/'+_0x56f719)[_0x6a3d('0x15')](_0x11765c);}return null;};}function saveUpdates(_0x26b5a0){return function(_0x58b737){if(_0x58b737){return _0x58b737[_0x6a3d('0x1b')](_0x26b5a0)[_0x6a3d('0x1c')](function(_0x1a50d5){return _0x1a50d5;});}return null;};}function removeEntity(_0x4821a2){return function(_0x47ce01){if(_0x47ce01){return _0x47ce01['destroy']()['then'](function(){_0x4821a2[_0x6a3d('0x14')](0xcc)[_0x6a3d('0x1d')]();});}};}function handleEntityNotFound(_0x5b1089){return function(_0xb9d97b){if(!_0xb9d97b){_0x5b1089[_0x6a3d('0x13')](0x194);}return _0xb9d97b;};}function handleError(_0x52bf2a,_0x261b96){_0x261b96=_0x261b96||0x1f4;return function(_0x365505){logger['error'](_0x365505[_0x6a3d('0x1e')]);if(_0x365505[_0x6a3d('0x1f')]){delete _0x365505[_0x6a3d('0x1f')];}_0x52bf2a['status'](_0x261b96)[_0x6a3d('0x20')](_0x365505);};}exports[_0x6a3d('0x21')]=function(_0xc5518f,_0x35e8d7){var _0x4b32cf={};var _0x4966dc=_[_0x6a3d('0x22')](db[_0x6a3d('0x23')][_0x6a3d('0x24')],function(_0x288b04){return{'name':_0x288b04[_0x6a3d('0x25')],'type':_0x288b04[_0x6a3d('0x26')][_0x6a3d('0x27')]};});_0x4b32cf=qs['getOptions'](_0x4966dc,_0xc5518f);return interaction[_0x6a3d('0x28')](_0x6a3d('0x29'),_0xc5518f[_0x6a3d('0x2a')],_0xc5518f[_0x6a3d('0x2b')],_0x4b32cf,_0x4966dc)[_0x6a3d('0x1c')](respondWithFilteredResult(_0x35e8d7,_0x4b32cf))[_0x6a3d('0x2c')](handleError(_0x35e8d7,null));};exports[_0x6a3d('0x2d')]=function(_0x3beff0,_0x45eda4){var _0x58ce8c={'raw':![],'where':{'id':_0x3beff0['params']['id']}},_0x5be19a={};_0x5be19a[_0x6a3d('0x2e')]=_[_0x6a3d('0x2f')](db[_0x6a3d('0x23')]['rawAttributes']);_0x5be19a[_0x6a3d('0x2a')]=_[_0x6a3d('0x2f')](_0x3beff0[_0x6a3d('0x2a')]);_0x5be19a[_0x6a3d('0x30')]=_[_0x6a3d('0x31')](_0x5be19a['model'],_0x5be19a['query']);_0x58ce8c[_0x6a3d('0x32')]=_[_0x6a3d('0x31')](_0x5be19a[_0x6a3d('0x2e')],qs['fields'](_0x3beff0[_0x6a3d('0x2a')][_0x6a3d('0x33')]));_0x58ce8c[_0x6a3d('0x32')]=_0x58ce8c['attributes'][_0x6a3d('0x34')]?_0x58ce8c[_0x6a3d('0x32')]:_0x5be19a[_0x6a3d('0x2e')];if(_0x3beff0[_0x6a3d('0x2a')]['includeAll']){_0x58ce8c['include']=[{'all':!![]}];}_0x58ce8c=_[_0x6a3d('0x35')]({},_0x58ce8c,_0x3beff0[_0x6a3d('0x36')]);return db[_0x6a3d('0x23')][_0x6a3d('0x37')](_0x58ce8c)[_0x6a3d('0x1c')](handleEntityNotFound(_0x45eda4,null))[_0x6a3d('0x1c')](respondWithResult(_0x45eda4,null))['catch'](handleError(_0x45eda4,null));};exports['create']=function(_0x37d8ef,_0x5d4a5e){return db[_0x6a3d('0x23')]['create'](_0x37d8ef['body'],{})[_0x6a3d('0x1c')](respondWithResult(_0x5d4a5e,0xc9))[_0x6a3d('0x2c')](handleError(_0x5d4a5e,null));};exports[_0x6a3d('0x1b')]=function(_0x44b080,_0x101031){if(_0x44b080[_0x6a3d('0x38')]['id']){delete _0x44b080[_0x6a3d('0x38')]['id'];}return db['MailInteraction']['find']({'where':{'id':_0x44b080[_0x6a3d('0x39')]['id']}})[_0x6a3d('0x1c')](handleEntityNotFound(_0x101031,null))[_0x6a3d('0x1c')](saveUpdates(_0x44b080[_0x6a3d('0x38')],null))[_0x6a3d('0x1c')](respondWithResult(_0x101031,null))[_0x6a3d('0x2c')](handleError(_0x101031,null));};exports[_0x6a3d('0x3a')]=function(_0x2c87d3,_0x3fe14d){return db[_0x6a3d('0x23')][_0x6a3d('0x37')]({'where':{'id':_0x2c87d3[_0x6a3d('0x39')]['id']}})['then'](handleEntityNotFound(_0x3fe14d,null))[_0x6a3d('0x1c')](removeEntity(_0x3fe14d,null))[_0x6a3d('0x2c')](handleError(_0x3fe14d,null));};exports['describe']=function(_0x50480b,_0x497943){return db[_0x6a3d('0x23')][_0x6a3d('0x3b')]()['then'](respondWithResult(_0x497943,null))[_0x6a3d('0x2c')](handleError(_0x497943,null));};exports[_0x6a3d('0x3c')]=function(_0x56e930,_0xb176b1){return db[_0x6a3d('0x3d')][_0x6a3d('0x37')]({'where':{'id':_0x56e930['params']['id']}})[_0x6a3d('0x1c')](handleEntityNotFound(_0xb176b1,null))[_0x6a3d('0x1c')](function(_0x3e5ae8){if(_0x3e5ae8){return _0x3e5ae8['addMessage'](_0x56e930[_0x6a3d('0x38')][_0x6a3d('0x3e')],_['omit'](_0x56e930[_0x6a3d('0x38')],[_0x6a3d('0x3e'),'id'])||{});}})['then'](respondWithResult(_0xb176b1,null))[_0x6a3d('0x2c')](handleError(_0xb176b1,null));};exports['getMessages']=function(_0xc04f9f,_0xfa7811){var _0x25b241={'raw':![],'where':{}};var _0x572f57={};var _0x3859fd={'count':0x0,'rows':[]};return db[_0x6a3d('0x23')][_0x6a3d('0x3f')]({'where':{'id':_0xc04f9f[_0x6a3d('0x39')]['id']}})[_0x6a3d('0x1c')](handleEntityNotFound(_0xfa7811,null))[_0x6a3d('0x1c')](function(_0x5c74f8){if(_0x5c74f8){_0x572f57[_0x6a3d('0x2e')]=_[_0x6a3d('0x2f')](db[_0x6a3d('0x3d')]['rawAttributes']);_0x572f57[_0x6a3d('0x2a')]=_[_0x6a3d('0x2f')](_0xc04f9f[_0x6a3d('0x2a')]);_0x572f57[_0x6a3d('0x30')]=_[_0x6a3d('0x31')](_0x572f57[_0x6a3d('0x2e')],_0x572f57[_0x6a3d('0x2a')]);_0x25b241[_0x6a3d('0x32')]=_[_0x6a3d('0x31')](_0x572f57[_0x6a3d('0x2e')],qs['fields'](_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x33')]));_0x25b241[_0x6a3d('0x32')]=_0x25b241[_0x6a3d('0x32')][_0x6a3d('0x34')]?_0x25b241[_0x6a3d('0x32')]:_0x572f57[_0x6a3d('0x2e')];if(!_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x40')](_0x6a3d('0x41'))){_0x25b241[_0x6a3d('0x19')]=qs[_0x6a3d('0x19')](_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x19')]);_0x25b241['offset']=qs[_0x6a3d('0x16')](_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x16')]);}_0x25b241[_0x6a3d('0x42')]=qs[_0x6a3d('0x43')](_0xc04f9f[_0x6a3d('0x2a')]['sort']);_0x25b241[_0x6a3d('0x44')]=qs[_0x6a3d('0x30')](_['pick'](_0xc04f9f[_0x6a3d('0x2a')],_0x572f57[_0x6a3d('0x30')]));_0x25b241[_0x6a3d('0x44')]['MailInteractionId']=_0x5c74f8['id'];if(_0xc04f9f['query'][_0x6a3d('0x45')]){_0x25b241['where']=_[_0x6a3d('0x35')](_0x25b241[_0x6a3d('0x44')],{'$or':_['map'](_0x25b241[_0x6a3d('0x32')],function(_0x19f8cf){var _0x595c5a={};_0x595c5a[_0x19f8cf]={'$like':'%'+_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x45')]+'%'};return _0x595c5a;})});}if(_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x46')]){var _0x47f20c=_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x46')][_0x6a3d('0x47')](',');var _0x3a509={};_0x3a509[_0x47f20c[0x0]]={'$gte':moment(_0x47f20c[0x1])[_0x6a3d('0x48')]('YYYY-MM-DD\x20HH:mm:ss')};_0x25b241['where']=_[_0x6a3d('0x35')](_0x25b241['where'],_0x3a509);}_0x25b241=_[_0x6a3d('0x35')]({},_0x25b241,_0xc04f9f['options']);return db[_0x6a3d('0x3d')][_0x6a3d('0x18')]({'where':_0x25b241['where']})[_0x6a3d('0x1c')](function(_0x1bc118){_0x3859fd[_0x6a3d('0x18')]=_0x1bc118;if(_0xc04f9f['query'][_0x6a3d('0x49')]){_0x25b241[_0x6a3d('0x4a')]=[{'all':!![]}];}return db[_0x6a3d('0x3d')]['findAll'](_0x25b241);})[_0x6a3d('0x1c')](function(_0x535a2c){if(_0xc04f9f[_0x6a3d('0x2a')][_0x6a3d('0x4b')]===_0x6a3d('0x4c')){for(var _0x57ec73=0x0;_0x57ec73<_0x535a2c['length'];_0x57ec73++){_0x535a2c[_0x57ec73][_0x6a3d('0x38')]=juice(_0x535a2c[_0x57ec73][_0x6a3d('0x38')]);}}_0x3859fd[_0x6a3d('0x4d')]=_0x535a2c;return _0x3859fd;});}})[_0x6a3d('0x1c')](respondWithFilteredResult(_0xfa7811,_0x25b241))['catch'](handleError(_0xfa7811,null));};exports[_0x6a3d('0x4e')]=function(_0x495f8a,_0x2ea646){return db['MailInteraction'][_0x6a3d('0x37')]({'where':{'id':_0x495f8a['params']['id']}})[_0x6a3d('0x1c')](handleEntityNotFound(_0x2ea646,null))[_0x6a3d('0x1c')](function(_0x50c4a1){if(_0x50c4a1){return _0x50c4a1['setTags'](_0x495f8a[_0x6a3d('0x38')][_0x6a3d('0x3e')],_[_0x6a3d('0x4f')](_0x495f8a[_0x6a3d('0x38')],['ids','id'])||{})['spread'](function(){return db['Tag'][_0x6a3d('0x28')]({'attributes':['id',_0x6a3d('0x1f'),_0x6a3d('0x50')],'where':{'id':_0x495f8a[_0x6a3d('0x38')][_0x6a3d('0x3e')]}});})[_0x6a3d('0x1c')](function(_0xcdee51){socket[_0x6a3d('0x51')](_0x6a3d('0x52'),{'id':Number(_0x495f8a['params']['id']),'tags':_0xcdee51||[]});return{'id':Number(_0x495f8a[_0x6a3d('0x39')]['id']),'tags':_0xcdee51||[]};});}})[_0x6a3d('0x1c')](respondWithResult(_0x2ea646,null))[_0x6a3d('0x2c')](handleError(_0x2ea646,null));};exports['removeTags']=function(_0x2cf46a,_0x20695e){return db[_0x6a3d('0x23')]['find']({'where':{'id':_0x2cf46a[_0x6a3d('0x39')]['id']}})[_0x6a3d('0x1c')](handleEntityNotFound(_0x20695e,null))['then'](function(_0x5cc46a){if(_0x5cc46a){return _0x5cc46a['removeTags'](_0x2cf46a[_0x6a3d('0x2a')][_0x6a3d('0x3e')]);}})[_0x6a3d('0x1c')](respondWithStatusCode(_0x20695e,null))['catch'](handleError(_0x20695e,null));};exports['download']=function(_0x3706b9,_0x9cd836){var _0x5edcf2=moment()[_0x6a3d('0x53')]()[_0x6a3d('0x54')]();var _0x26869c=path[_0x6a3d('0x55')](config['root'],_0x6a3d('0x56'),_0x6a3d('0x57'),'tmp');var _0x4e1483=path[_0x6a3d('0x55')](config[_0x6a3d('0x58')],_0x6a3d('0x56'),_0x6a3d('0x57'),_0x6a3d('0x59'));var _0x230288=path[_0x6a3d('0x55')](_0x26869c,_0x5edcf2);var _0x2ae24d=util['format'](_0x6a3d('0x5a'),_0x3706b9['params']['id'],_0x5edcf2);var _0x250b5a=path[_0x6a3d('0x55')](_0x26869c,_0x2ae24d);var _0x11abfa=[];if(_0x3706b9[_0x6a3d('0x2a')]['attachments']){_0x11abfa[_0x6a3d('0x5b')]({'model':db[_0x6a3d('0x5c')],'as':_0x6a3d('0x5d'),'raw':!![]});}var _0x176766=[{'model':db['MailMessage'],'as':_0x6a3d('0x5e'),'attributes':['id',_0x6a3d('0x38'),_0x6a3d('0x5f'),'to','cc','bcc',_0x6a3d('0x60'),'createdAt'],'where':{'secret':![]},'order':qs[_0x6a3d('0x43')]('id'),'include':_0x11abfa}];return db['MailInteraction'][_0x6a3d('0x37')]({'where':{'id':_0x3706b9[_0x6a3d('0x39')]['id']},'include':_0x176766})[_0x6a3d('0x1c')](handleEntityNotFound(_0x9cd836,null))[_0x6a3d('0x1c')](function(_0x3ab104){if(_0x3ab104&&_0x3ab104[_0x6a3d('0x5e')]){var _0x354d0e=_0x3ab104[_0x6a3d('0x61')]({'plain':!![]});fs['mkdirSync'](_0x230288);return BPromise['each'](_0x354d0e[_0x6a3d('0x5e')],function(_0x2efa65,_0x89740e){var _0x295fb3={'from':_0x2efa65['from'],'to':_0x2efa65['to']||_0x6a3d('0x62'),'subject':_0x2efa65['subject'],'html':htmlEntities[_0x6a3d('0x63')](_0x2efa65[_0x6a3d('0x38')]),'headers':{'Date':moment(_0x2efa65[_0x6a3d('0x64')])[_0x6a3d('0x48')](_0x6a3d('0x65'))},'attachments':[]};if(_0x2efa65['cc']){_0x295fb3['headers']['Cc']=_0x2efa65['cc'];}if(_0x2efa65['bcc']){_0x295fb3[_0x6a3d('0x66')]['Bcc']=_0x2efa65[_0x6a3d('0x67')];}return new BPromise(function(_0x409a07,_0x1c26f6){if(_0x2efa65[_0x6a3d('0x5d')]){for(var _0x166b0d=0x0;_0x166b0d<_0x2efa65[_0x6a3d('0x5d')][_0x6a3d('0x34')];_0x166b0d++){var _0x5497b4=_0x2efa65['Attachments'][_0x166b0d];var _0x2d9705=path['join'](_0x4e1483,_0x5497b4[_0x6a3d('0x68')]);if(fs[_0x6a3d('0x69')](_0x2d9705)){_0x295fb3[_0x6a3d('0x59')][_0x6a3d('0x5b')]({'name':_0x5497b4[_0x6a3d('0x1f')],'contentType':_0x5497b4[_0x6a3d('0x26')],'data':fs['readFileSync'](_0x2d9705)});}}}emlformat[_0x6a3d('0x6a')](_0x295fb3,function(_0x362fa2,_0x3e1c9f){if(_0x362fa2)return _0x1c26f6(_0x362fa2);fs[_0x6a3d('0x6b')](path[_0x6a3d('0x55')](_0x230288,util[_0x6a3d('0x48')](_0x6a3d('0x6c'),_0x89740e)),_0x3e1c9f);return _0x409a07(_0x3e1c9f);});});})[_0x6a3d('0x1c')](function(){return new BPromise(function(_0x535600,_0x52c83d){zipdir(_0x230288,{'saveTo':_0x250b5a},function(_0xd98ed2,_0xedecf0){if(_0xd98ed2)return _0x52c83d(_0xd98ed2);return _0x535600(_0xedecf0);});})['then'](function(){return new BPromise(function(_0x51e6bf,_0x24bd8c){rimraf(_0x230288,function(_0x2ad253){if(_0x2ad253)_0x24bd8c(_0x2ad253);return _0x51e6bf();});});})[_0x6a3d('0x1c')](function(){return _0x9cd836[_0x6a3d('0x6d')](_0x250b5a,_0x2ae24d,function(_0xe4c764){if(!_0xe4c764)fs[_0x6a3d('0x6e')](_0x250b5a);});});});}else{return _0x9cd836[_0x6a3d('0x13')](0xc8);}})[_0x6a3d('0x2c')](handleError(_0x9cd836,null));};
\ No newline at end of file