Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index a1d6ccf..e0a947a 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa40b=['update','then','destroy','sendStatus','error','stack','send','Users','map','fullname','Tags','TagIds','forEach','push','MailInteraction','findOne','lastMsgText','trimStart','fromString','index','rawAttributes','fieldName','type','model','name','keys','filters','intersection','query','fields','attributes','nolimit','order','sort','where','pick','select','field','color','from','tools_tags','u.fullname','ui.MailInteractionId','user_has_mail_interactions','left_join','users','u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','mail_accounts','a.id\x20=\x20i.MailAccountId','me.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','sqlOperator','conditions','unreadMessages','having','`\x20>\x200','Contact','operator','$substring','split','length','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','value','ContactId','buildExpression','text','start','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','UserId','compact','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20>\x200','isArray','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','SELECT','clone','contactName','DESC','t.id\x20IN\x20?','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','role','agent','user','getMailAccounts','i.MailAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','a.mandatoryDisposition','Account.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','i.createdAt','i.updatedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.disposition','i.secondDisposition','i.substatus','i.to','i.ContactId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy','MailInteractionId','Setting','enableEmailPreview','all','catch','show','params','includeAll','include','options','find','create','body','describe','addMessage','MailMessage','ids','getMessages','hasOwnProperty','$gte','findAll','rows','addTags','setTags','omit','Tag','emit','removeTags','download','server','files','tmp','root','attachments','join','format','transcript-%d-%s.zip','Attachment','Attachments','subject','Messages','get','each','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','Bcc','basename','existsSync','build','writeFileSync','message%d.eml','err','eml-format','rimraf','zip-dir','moment','bluebird','mustache','util','path','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','html-to-text','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','status','end','count','offset','limit','set','json','apply','reject','save'];(function(_0x397d3c,_0x1bacc6){var _0x305c8e=function(_0x3a385d){while(--_0x3a385d){_0x397d3c['push'](_0x397d3c['shift']());}};_0x305c8e(++_0x1bacc6);}(_0xa40b,0xcf));var _0xba40=function(_0x45e180,_0x54554f){_0x45e180=_0x45e180-0x0;var _0x1e4695=_0xa40b[_0x45e180];return _0x1e4695;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xba40('0x0'));var rimraf=require(_0xba40('0x1'));var zipdir=require(_0xba40('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xba40('0x3'));var BPromise=require(_0xba40('0x4'));var Mustache=require(_0xba40('0x5'));var util=require(_0xba40('0x6'));var path=require(_0xba40('0x7'));var sox=require('sox');var csv=require(_0xba40('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xba40('0x9'));var squel=require(_0xba40('0xa'));var crypto=require(_0xba40('0xb'));var jsforce=require(_0xba40('0xc'));var deskjs=require(_0xba40('0xd'));var toCsv=require(_0xba40('0x8'));var querystring=require(_0xba40('0xe'));var Papa=require('papaparse');var htmlToText=require(_0xba40('0xf'));var Redis=require(_0xba40('0x10'));var authService=require(_0xba40('0x11'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xba40('0x12'))(_0xba40('0x13'));var utils=require(_0xba40('0x14'));var config=require(_0xba40('0x15'));var licenseUtil=require(_0xba40('0x16'));var db=require(_0xba40('0x17'))['db'];config['redis']=_[_0xba40('0x18')](config[_0xba40('0x19')],{'host':_0xba40('0x1a'),'port':0x18eb});var socket=require(_0xba40('0x1b'))(new Redis(config[_0xba40('0x19')]));require(_0xba40('0x1c'))[_0xba40('0x1d')](socket);function respondWithStatusCode(_0x15ba8b,_0x1eb433){_0x1eb433=_0x1eb433||0xcc;return function(_0x48a808){if(_0x48a808){return _0x15ba8b['sendStatus'](_0x1eb433);}return _0x15ba8b[_0xba40('0x1e')](_0x1eb433)[_0xba40('0x1f')]();};}function respondWithResult(_0x13c475,_0x5c5132){_0x5c5132=_0x5c5132||0xc8;return function(_0x1567a3){if(_0x1567a3){return _0x13c475[_0xba40('0x1e')](_0x5c5132)['json'](_0x1567a3);}};}function respondWithFilteredResult(_0x37ac5b,_0x19b410){return function(_0x418cee){if(_0x418cee){var _0x4b9571=_0x418cee[_0xba40('0x20')],_0x7f14f5=_0x19b410[_0xba40('0x21')],_0x3e0429=_0x19b410[_0xba40('0x21')]+_0x19b410[_0xba40('0x22')],_0x5e7a4a;if(_0x3e0429>=_0x4b9571){_0x3e0429=_0x4b9571;_0x5e7a4a=0xc8;}else{_0x5e7a4a=0xce;}_0x37ac5b[_0xba40('0x1e')](_0x5e7a4a);return _0x37ac5b[_0xba40('0x23')]('Content-Range',_0x7f14f5+'-'+_0x3e0429+'/'+_0x4b9571)[_0xba40('0x24')](_0x418cee);}return null;};}function patchUpdates(_0x4b1fd6){return function(_0x2ed8bf){try{jsonpatch[_0xba40('0x25')](_0x2ed8bf,_0x4b1fd6,!![]);}catch(_0x55cd53){return BPromise[_0xba40('0x26')](_0x55cd53);}return _0x2ed8bf[_0xba40('0x27')]();};}function saveUpdates(_0x57182d,_0x2d3ba2){return function(_0x43e39f){if(_0x43e39f){return _0x43e39f[_0xba40('0x28')](_0x57182d)[_0xba40('0x29')](function(_0x4f97ae){return _0x4f97ae;});}return null;};}function removeEntity(_0x457209,_0x3a8c7a){return function(_0x138b19){if(_0x138b19){return _0x138b19[_0xba40('0x2a')]()[_0xba40('0x29')](function(){_0x457209[_0xba40('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x557571,_0x862c82){return function(_0x57d7de){if(!_0x57d7de){_0x557571[_0xba40('0x2b')](0x194);}return _0x57d7de;};}function handleError(_0x23e84e,_0x2669dc){_0x2669dc=_0x2669dc||0x1f4;return function(_0x2053b5){logger[_0xba40('0x2c')](_0x2053b5[_0xba40('0x2d')]);if(_0x2053b5['name']){delete _0x2053b5['name'];}_0x23e84e[_0xba40('0x1e')](_0x2669dc)[_0xba40('0x2e')](_0x2053b5);};}function getInteractionUsers(_0x42a475,_0x11db5b){return new BPromise(function(_0x18ee31,_0x2cd026){try{if(_0x11db5b[_0x42a475['id']]){_0x42a475[_0xba40('0x2f')]=_[_0xba40('0x30')](_0x11db5b[_0x42a475['id']],function(_0x4ee4e7){return{'id':_0x4ee4e7['id'],'fullname':_0x4ee4e7[_0xba40('0x31')]};});}}catch(_0x35fe0f){_0x2cd026(_0x35fe0f);}_0x18ee31(_0x42a475);});}function getInteractionTags(_0x3de236,_0x5bbef8){return new BPromise(function(_0x5bad95,_0x137eb4){try{if(_0x3de236['TagIds']){_0x3de236[_0xba40('0x32')]=[];_0x3de236[_0xba40('0x33')]['split'](',')[_0xba40('0x34')](function(_0x188f32){_0x3de236[_0xba40('0x32')][_0xba40('0x35')](_0x5bbef8[_0x188f32]);});}delete _0x3de236[_0xba40('0x33')];}catch(_0x587b33){_0x137eb4(_0x587b33);}_0x5bad95(_0x3de236);});}function getLastMessageText(_0x5448de){return new BPromise(function(_0x727a1e,_0x19f57f){return db[_0xba40('0x36')][_0xba40('0x37')]({'where':{'id':_0x5448de['id']},'attributes':['lastMsgBody','lastMsgText'],'raw':!![]})[_0xba40('0x29')](function(_0x5b8c45){if(!_0x5b8c45[_0xba40('0x38')]){_0x5448de[_0xba40('0x38')]=_[_0xba40('0x39')](htmlToText[_0xba40('0x3a')](_0x5b8c45['lastMsgBody'],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]}));}else{_0x5448de['lastMsgText']=_0x5b8c45[_0xba40('0x38')];}_0x727a1e(_0x5448de);})['catch'](function(_0x2cd6cf){_0x19f57f(_0x2cd6cf);});});}function updateMailInteraction(_0x55dba5,_0x2c5495,_0x29d2e9,_0x10ab45){return new BPromise(function(_0x1c8fc0,_0x5021e4){return getInteractionUsers(_0x55dba5,_0x29d2e9)[_0xba40('0x29')](function(_0x4c326f){return getInteractionTags(_0x4c326f,_0x2c5495);})['then'](function(_0x1a2b5e){if(_0x10ab45){_0x1c8fc0(getLastMessageText(_0x1a2b5e));}else{_0x1c8fc0(_0x1a2b5e);}})['catch'](function(_0x45a38b){_0x5021e4(_0x45a38b);});});}exports[_0xba40('0x3b')]=function(_0x3ec3bb,_0x502940){var _0x5dc94e={},_0x343f76={},_0x5dd49a={'count':0x0,'rows':[]};var _0x526afb=_['map'](db['MailInteraction'][_0xba40('0x3c')],function(_0xd379df){return{'name':_0xd379df[_0xba40('0x3d')],'type':_0xd379df[_0xba40('0x3e')]['key']};});_0x343f76[_0xba40('0x3f')]=_['map'](_0x526afb,_0xba40('0x40'));_0x343f76['query']=_[_0xba40('0x41')](_0x3ec3bb['query']);_0x343f76[_0xba40('0x42')]=_[_0xba40('0x43')](_0x343f76['model'],_0x343f76[_0xba40('0x44')]);_0x5dc94e['attributes']=_[_0xba40('0x43')](_0x343f76[_0xba40('0x3f')],qs[_0xba40('0x45')](_0x3ec3bb[_0xba40('0x44')][_0xba40('0x45')]));_0x5dc94e[_0xba40('0x46')]=_0x5dc94e[_0xba40('0x46')]['length']?_0x5dc94e[_0xba40('0x46')]:_0x343f76[_0xba40('0x3f')];if(!_0x3ec3bb[_0xba40('0x44')]['hasOwnProperty'](_0xba40('0x47'))){_0x5dc94e[_0xba40('0x22')]=qs[_0xba40('0x22')](_0x3ec3bb[_0xba40('0x44')][_0xba40('0x22')]);_0x5dc94e['offset']=qs[_0xba40('0x21')](_0x3ec3bb[_0xba40('0x44')][_0xba40('0x21')]);}_0x5dc94e[_0xba40('0x48')]=qs[_0xba40('0x49')](_0x3ec3bb[_0xba40('0x44')][_0xba40('0x49')]);_0x5dc94e[_0xba40('0x4a')]=qs[_0xba40('0x42')](_[_0xba40('0x4b')](_0x3ec3bb['query'],_0x343f76[_0xba40('0x42')]),_0x526afb);var _0x5e4502=[];var _0x599051=squel[_0xba40('0x4c')]()['field']('id')[_0xba40('0x4d')]('name')[_0xba40('0x4d')](_0xba40('0x4e'))[_0xba40('0x4f')](_0xba40('0x50'));var _0x3975e3=squel[_0xba40('0x4c')]()[_0xba40('0x4d')]('u.id')[_0xba40('0x4d')](_0xba40('0x51'))[_0xba40('0x4d')](_0xba40('0x52'))[_0xba40('0x4f')](_0xba40('0x53'),'ui')[_0xba40('0x54')](_0xba40('0x55'),'u',_0xba40('0x56'));var _0x5603c0=squel[_0xba40('0x4c')]()[_0xba40('0x4f')](_0xba40('0x57'),'i')[_0xba40('0x54')](_0xba40('0x58'),'c',_0xba40('0x59'))[_0xba40('0x54')](_0xba40('0x55'),'o',_0xba40('0x5a'))[_0xba40('0x54')](_0xba40('0x5b'),'a',_0xba40('0x5c'))[_0xba40('0x54')]('mail_messages','me',_0xba40('0x5d'))[_0xba40('0x54')]('mail_interaction_has_tags','it','it.MailInteractionId\x20=\x20i.id')['left_join'](_0xba40('0x50'),'t',_0xba40('0x5e'));var _0x39eec4=squel['expr']();var _0x5f31a7=[];var _0x416df5=squel[_0xba40('0x5f')]();var _0x54c96a;if(_0x3ec3bb[_0xba40('0x44')][_0xba40('0x60')]){_0x54c96a=as['parseSearch'](_0x3ec3bb['query'][_0xba40('0x60')]);var _0x5181e2=_0x54c96a[_0xba40('0x61')];for(var _0x2b8e07=0x0;_0x2b8e07<_0x54c96a['conditions']['length'];_0x2b8e07++){var _0x2c3de9=_0x54c96a[_0xba40('0x62')][_0x2b8e07];var _0x509193='i';var _0x20e935=_['find'](_0x526afb,[_0xba40('0x40'),_0x2c3de9[_0xba40('0x4d')]]);if(!_0x20e935){switch(_0x2c3de9[_0xba40('0x4d')]){case _0xba40('0x63'):if(_0x2c3de9['value']==0x1){_0x5603c0[_0xba40('0x64')]('`'+_0x2c3de9['field']+'`\x20=\x200');}else{_0x5603c0[_0xba40('0x64')]('`'+_0x2c3de9[_0xba40('0x4d')]+_0xba40('0x65'));}break;case _0xba40('0x66'):if(_0x2c3de9[_0xba40('0x67')]===_0xba40('0x68')){if(_0x2c3de9['value'][_0xba40('0x69')]('\x20')[_0xba40('0x6a')]>0x1){_0x39eec4[_0x5181e2](_0xba40('0x6b'),qs[_0xba40('0x6c')](_0x2c3de9[_0xba40('0x6d')]),null);}else{var _0x2bc3c6='%'+_0x2c3de9[_0xba40('0x6d')]+'%';_0x39eec4[_0x5181e2]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x2bc3c6,_0x2bc3c6,_0x2bc3c6);}}else{_0x20e935=_['find'](_0x526afb,[_0xba40('0x40'),_0xba40('0x6e')]);_0x2c3de9[_0xba40('0x4d')]=_0xba40('0x6e');_0x3a61cf=as[_0xba40('0x6f')](_0x509193,_0x20e935[_0xba40('0x3e')],_0x2c3de9);_0x39eec4[_0x5181e2](_0x3a61cf[_0xba40('0x70')],_0x3a61cf[_0xba40('0x6d')][_0xba40('0x71')],_0x3a61cf[_0xba40('0x6d')]['end']);}break;case'Tag':var _0xba8939=_0x2c3de9[_0xba40('0x6d')]['split'](',')[_0xba40('0x30')](function(_0x166190){return Number(_0x166190);});_0xba8939[_0xba40('0x34')](function(_0x12e2f9){_0x416df5['or'](_0xba40('0x72'),'%,'+_0x12e2f9+',%');});_0x5f31a7=_[_0xba40('0x73')](_0x5f31a7,_0xba8939);break;case _0xba40('0x74'):if(_0x2c3de9[_0xba40('0x67')]===_0xba40('0x68')){_0x39eec4[_0x5181e2]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x2c3de9[_0xba40('0x6d')]+'%',null);}else{_0x20e935=_['find'](_0x526afb,['name',_0xba40('0x75')]);_0x2c3de9[_0xba40('0x4d')]=_0xba40('0x75');_0x3a61cf=as[_0xba40('0x6f')](_0x509193,_0x20e935[_0xba40('0x3e')],_0x2c3de9);_0x39eec4[_0x5181e2](_0x3a61cf['text'],_0x3a61cf[_0xba40('0x6d')][_0xba40('0x71')],_0x3a61cf[_0xba40('0x6d')]['end']);}break;case'plainBody':_0x3a61cf=as[_0xba40('0x6f')]('me',null,_0x2c3de9);_0x39eec4[_0x5181e2](_0x3a61cf[_0xba40('0x70')],_0x3a61cf[_0xba40('0x6d')][_0xba40('0x71')],_0x3a61cf[_0xba40('0x6d')][_0xba40('0x1f')]);break;}}else{var _0x3a61cf=as[_0xba40('0x6f')](_0x509193,_0x20e935[_0xba40('0x3e')],_0x2c3de9);_0x39eec4[_0x5181e2](_0x3a61cf[_0xba40('0x70')],_0x3a61cf[_0xba40('0x6d')]['start'],_0x3a61cf[_0xba40('0x6d')][_0xba40('0x1f')]);}}}else{var _0x3b026b=_(_0x3ec3bb[_0xba40('0x44')])[_0xba40('0x41')]()[_0xba40('0x30')](function(_0x56d8b3){return _['some'](_0x526afb,['name',_0x56d8b3])?_0x56d8b3:undefined;})[_0xba40('0x76')]()[_0xba40('0x6d')]();if(!_[_0xba40('0x77')](_0x3b026b)){_0x3b026b['forEach'](function(_0xb49c79){if(_0xb49c79===_0xba40('0x78')){_0x5603c0['where'](_0xba40('0x79'),[]['concat'](_0x3ec3bb[_0xba40('0x44')][_0xb49c79]));}else if(_0xb49c79===_0xba40('0x7a')){var _0x4854d5=JSON['parse'](_0x3ec3bb[_0xba40('0x44')][_0xb49c79])['$gte'];var _0x1a767f=JSON[_0xba40('0x7b')](_0x3ec3bb['query'][_0xb49c79])[_0xba40('0x7c')];_0x5603c0[_0xba40('0x4a')](_0xba40('0x7d'),_0x4854d5,_0x1a767f);}else{if(_0x3ec3bb[_0xba40('0x44')][_0xb49c79]===_0xba40('0x7e')){_0x5603c0[_0xba40('0x4a')]('i.'+_0xb49c79+'\x20IS\x20NULL');}else{_0x5603c0[_0xba40('0x4a')]('i.'+_0xb49c79+_0xba40('0x7f'),_0x3ec3bb[_0xba40('0x44')][_0xb49c79]);}}});}if(_0x3ec3bb[_0xba40('0x44')][_0xba40('0x80')]){if(_0x3ec3bb[_0xba40('0x44')][_0xba40('0x80')]==0x1){_0x5603c0[_0xba40('0x64')]('`unreadMessages`\x20=\x200');}else{_0x5603c0[_0xba40('0x64')](_0xba40('0x81'));}}if(_0x3ec3bb[_0xba40('0x44')]['tag']){_0x5f31a7=_[_0xba40('0x82')](_0x3ec3bb[_0xba40('0x44')][_0xba40('0x83')])?_0x3ec3bb[_0xba40('0x44')][_0xba40('0x83')]:new Array(_0x3ec3bb['query'][_0xba40('0x83')]);_0x5f31a7[_0xba40('0x34')](function(_0x3547b0){_0x416df5['or'](_0xba40('0x72'),'%,'+_0x3547b0+',%');});}if(_0x3ec3bb[_0xba40('0x44')][_0xba40('0x84')]){var _0x16c66d=_0x3ec3bb[_0xba40('0x44')][_0xba40('0x84')]['replace']('\x5c','\x5c\x5c')[_0xba40('0x85')](/'/g,'\x27\x27');if(qs[_0xba40('0x86')](_0x16c66d)){_0x39eec4['or'](_0xba40('0x87'),_0x16c66d+'%');}else if(qs[_0xba40('0x88')](_0x16c66d)){_0x39eec4['or'](_0xba40('0x89'),_0x16c66d+'%');}else{_0x39eec4['or'](_0xba40('0x8a'),qs[_0xba40('0x6c')](_0x16c66d))['or'](_0xba40('0x8b'),qs[_0xba40('0x6c')](_0x16c66d));}}}_0x5603c0[_0xba40('0x4a')](_0x39eec4);_0x5603c0[_0xba40('0x8c')](_0xba40('0x8d'));var _0x3d7c0c={'type':db[_0xba40('0x8e')]['QueryTypes'][_0xba40('0x8f')],'raw':!![]};var _0x554c4b=_0x5603c0[_0xba40('0x90')]();_0x554c4b[_0xba40('0x4d')](_0xba40('0x8d'));_0x554c4b['field']('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');if(_0x5dc94e[_0xba40('0x48')]){_0x5dc94e[_0xba40('0x48')][_0xba40('0x34')](function(_0x56f7ee){var _0x14494c=_0x56f7ee[0x0]===_0xba40('0x91')?_0x56f7ee[0x0]:'i.'+_0x56f7ee[0x0];_0x5603c0[_0xba40('0x48')](_0x14494c,_0x56f7ee[0x1]===_0xba40('0x92')?![]:!![]);});}if(!_[_0xba40('0x77')](_0x5f31a7)){_0x5603c0[_0xba40('0x64')](_0x416df5);_0x554c4b['where'](_0xba40('0x93'),_0x5f31a7);}BPromise[_0xba40('0x94')]()['then'](function(){if(!_0x54c96a){if(_0x3ec3bb[_0xba40('0x44')][_0xba40('0x78')])return;_0x554c4b[_0xba40('0x4a')](_0xba40('0x95'));_0x5603c0[_0xba40('0x4a')](_0xba40('0x95'));return;}if(_0x3ec3bb['user'][_0xba40('0x96')]!==_0xba40('0x97'))return;return _0x3ec3bb[_0xba40('0x98')][_0xba40('0x99')]({'attributes':['id'],'raw':!![]})['then'](function(_0x2aa66a){if(_[_0xba40('0x77')](_0x2aa66a)){_0x554c4b['where'](_0xba40('0x9a'));_0x5603c0[_0xba40('0x4a')]('i.MailAccountId\x20IS\x20NULL');}else{_0x554c4b[_0xba40('0x4a')](_0xba40('0x79'),_[_0xba40('0x30')](_0x2aa66a,'id'));_0x5603c0['where'](_0xba40('0x79'),_[_0xba40('0x30')](_0x2aa66a,'id'));}});})[_0xba40('0x29')](function(){if(_0x3ec3bb[_0xba40('0x98')]['role']===_0xba40('0x97')&&!_0x54c96a&&!_0x3ec3bb['query'][_0xba40('0x78')])return[];return db[_0xba40('0x9b')][_0xba40('0x44')](_0x554c4b[_0xba40('0x9c')](),_0x3d7c0c);})[_0xba40('0x29')](function(_0x3a6b6d){_0x5dd49a[_0xba40('0x20')]=_0x3a6b6d[_0xba40('0x6a')];if(_0x5dd49a[_0xba40('0x20')]===0x0)return[];return db[_0xba40('0x9b')][_0xba40('0x44')](_0x599051[_0xba40('0x9c')](),_0x3d7c0c)[_0xba40('0x29')](function(_0x448320){_0x5e4502=_[_0xba40('0x9d')](_0x448320,'id');_0x3d7c0c=_[_0xba40('0x9e')](_0x3d7c0c,{'model':db[_0xba40('0x36')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3ec3bb[_0xba40('0x44')]['fields']){_0x5dc94e['attributes'][_0xba40('0x34')](function(_0x4105bd){_0x5603c0[_0xba40('0x4d')]('i.'+_0x4105bd);});}else{_0x5603c0[_0xba40('0x4d')](_0xba40('0x9f'),_0xba40('0x63'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa0'),_0xba40('0xa1'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa2'),_0xba40('0xa3'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa4'),'contactName');_0x5603c0[_0xba40('0x4d')](_0xba40('0x8d'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa5'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa6'));_0x5603c0[_0xba40('0x4d')]('i.closed');_0x5603c0['field']('i.closedAt');_0x5603c0['field'](_0xba40('0xa7'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa8'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xa9'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xaa'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xab'));_0x5603c0['field'](_0xba40('0xac'));_0x5603c0[_0xba40('0x4d')]('i.thirdDisposition');_0x5603c0[_0xba40('0x4d')](_0xba40('0xad'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xae'));_0x5603c0['field'](_0xba40('0xaf'));_0x5603c0[_0xba40('0x4d')]('i.MailAccountId');_0x5603c0[_0xba40('0x4d')](_0xba40('0xb0'));_0x5603c0['field'](_0xba40('0xb1'),_0xba40('0xb2'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xb3'),_0xba40('0xb4'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xb5'),_0xba40('0xb6'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xb7'),'Contact.phone');_0x5603c0[_0xba40('0x4d')](_0xba40('0xb8'),_0xba40('0xb9'));_0x5603c0['field'](_0xba40('0xba'),_0xba40('0xbb'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xbc'),'Owner.fullname');_0x5603c0['field'](_0xba40('0xbd'),_0xba40('0xbe'));_0x5603c0[_0xba40('0x4d')](_0xba40('0xbf'),'TagIds');}if(_0x5dc94e[_0xba40('0x22')])_0x5603c0['limit'](_0x5dc94e[_0xba40('0x22')]);if(_0x5dc94e[_0xba40('0x21')])_0x5603c0[_0xba40('0x21')](_0x5dc94e[_0xba40('0x21')]);return db['sequelize']['query'](_0x5603c0[_0xba40('0x9c')](),_0x3d7c0c);})['then'](function(_0x3fd032){_0x3975e3['where'](_0xba40('0xc0'),_[_0xba40('0x30')](_0x3fd032,'id'));return db[_0xba40('0x9b')]['query'](_0x3975e3[_0xba40('0x9c')](),_0x3d7c0c)[_0xba40('0x29')](function(_0x3c6192){var _0x2d002b=_[_0xba40('0xc1')](_0x3c6192,_0xba40('0xc2'));var _0x201ada=[];return db[_0xba40('0xc3')]['findOne']({'attributes':[_0xba40('0xc4')],'raw':!![]})[_0xba40('0x29')](function(_0x5b48a8){var _0x2d4b36=_0x5b48a8[_0xba40('0xc4')];_0x3fd032[_0xba40('0x34')](function(_0x461252){_0x201ada['push'](updateMailInteraction(_0x461252,_0x5e4502,_0x2d002b,_0x2d4b36));});return BPromise[_0xba40('0xc5')](_0x201ada);});});});})[_0xba40('0x29')](function(_0x5f0e8c){_0x5dd49a['rows']=_0x5f0e8c;return _0x5dd49a;})[_0xba40('0x29')](respondWithFilteredResult(_0x502940,_0x5dc94e))[_0xba40('0xc6')](handleError(_0x502940,null));};exports[_0xba40('0xc7')]=function(_0x5c8555,_0x60b35b){var _0x373fde={'raw':![],'where':{'id':_0x5c8555[_0xba40('0xc8')]['id']}},_0x5c7993={};_0x5c7993['model']=_[_0xba40('0x41')](db[_0xba40('0x36')][_0xba40('0x3c')]);_0x5c7993[_0xba40('0x44')]=_['keys'](_0x5c8555[_0xba40('0x44')]);_0x5c7993['filters']=_[_0xba40('0x43')](_0x5c7993[_0xba40('0x3f')],_0x5c7993[_0xba40('0x44')]);_0x373fde[_0xba40('0x46')]=_[_0xba40('0x43')](_0x5c7993['model'],qs[_0xba40('0x45')](_0x5c8555[_0xba40('0x44')]['fields']));_0x373fde[_0xba40('0x46')]=_0x373fde[_0xba40('0x46')][_0xba40('0x6a')]?_0x373fde[_0xba40('0x46')]:_0x5c7993[_0xba40('0x3f')];if(_0x5c8555[_0xba40('0x44')][_0xba40('0xc9')]){_0x373fde[_0xba40('0xca')]=[{'all':!![]}];}_0x373fde=_['merge']({},_0x373fde,_0x5c8555[_0xba40('0xcb')]);return db[_0xba40('0x36')][_0xba40('0xcc')](_0x373fde)[_0xba40('0x29')](handleEntityNotFound(_0x60b35b,null))[_0xba40('0x29')](respondWithResult(_0x60b35b,null))[_0xba40('0xc6')](handleError(_0x60b35b,null));};exports[_0xba40('0xcd')]=function(_0x209b2b,_0x33e303){return db[_0xba40('0x36')][_0xba40('0xcd')](_0x209b2b[_0xba40('0xce')],{})[_0xba40('0x29')](respondWithResult(_0x33e303,0xc9))[_0xba40('0xc6')](handleError(_0x33e303,null));};exports[_0xba40('0x28')]=function(_0x139def,_0x47107c){if(_0x139def[_0xba40('0xce')]['id']){delete _0x139def[_0xba40('0xce')]['id'];}return db[_0xba40('0x36')][_0xba40('0xcc')]({'where':{'id':_0x139def['params']['id']}})[_0xba40('0x29')](handleEntityNotFound(_0x47107c,null))['then'](saveUpdates(_0x139def[_0xba40('0xce')],null))['then'](respondWithResult(_0x47107c,null))[_0xba40('0xc6')](handleError(_0x47107c,null));};exports[_0xba40('0x2a')]=function(_0x4c4e1d,_0x233e6b){return db['MailInteraction'][_0xba40('0xcc')]({'where':{'id':_0x4c4e1d[_0xba40('0xc8')]['id']}})['then'](handleEntityNotFound(_0x233e6b,null))[_0xba40('0x29')](removeEntity(_0x233e6b,null))[_0xba40('0xc6')](handleError(_0x233e6b,null));};exports[_0xba40('0xcf')]=function(_0x22ef61,_0x2e6ce6){return db[_0xba40('0x36')][_0xba40('0xcf')]()[_0xba40('0x29')](respondWithResult(_0x2e6ce6,null))['catch'](handleError(_0x2e6ce6,null));};exports[_0xba40('0xd0')]=function(_0x2103fc,_0x7ca4ee,_0x3fbd00){return db[_0xba40('0xd1')][_0xba40('0xcc')]({'where':{'id':_0x2103fc[_0xba40('0xc8')]['id']}})[_0xba40('0x29')](handleEntityNotFound(_0x7ca4ee,null))['then'](function(_0x12b7ee){if(_0x12b7ee){return _0x12b7ee[_0xba40('0xd0')](_0x2103fc[_0xba40('0xce')][_0xba40('0xd2')],_['omit'](_0x2103fc['body'],[_0xba40('0xd2'),'id'])||{});}})['then'](respondWithResult(_0x7ca4ee,null))[_0xba40('0xc6')](handleError(_0x7ca4ee,null));};exports[_0xba40('0xd3')]=function(_0xfd7130,_0x510374,_0x111883){var _0x5cc0c6={'raw':![],'where':{}};var _0x369ca8={};var _0x1398ab={'count':0x0,'rows':[]};return db[_0xba40('0x36')][_0xba40('0x37')]({'where':{'id':_0xfd7130['params']['id']}})[_0xba40('0x29')](handleEntityNotFound(_0x510374,null))[_0xba40('0x29')](function(_0x25f447){if(_0x25f447){_0x369ca8[_0xba40('0x3f')]=_['keys'](db['MailMessage'][_0xba40('0x3c')]);_0x369ca8['query']=_[_0xba40('0x41')](_0xfd7130[_0xba40('0x44')]);_0x369ca8['filters']=_[_0xba40('0x43')](_0x369ca8[_0xba40('0x3f')],_0x369ca8[_0xba40('0x44')]);_0x5cc0c6[_0xba40('0x46')]=_[_0xba40('0x43')](_0x369ca8['model'],qs[_0xba40('0x45')](_0xfd7130['query'][_0xba40('0x45')]));_0x5cc0c6[_0xba40('0x46')]=_0x5cc0c6[_0xba40('0x46')][_0xba40('0x6a')]?_0x5cc0c6[_0xba40('0x46')]:_0x369ca8[_0xba40('0x3f')];if(!_0xfd7130['query'][_0xba40('0xd4')](_0xba40('0x47'))){_0x5cc0c6[_0xba40('0x22')]=qs['limit'](_0xfd7130[_0xba40('0x44')][_0xba40('0x22')]);_0x5cc0c6[_0xba40('0x21')]=qs[_0xba40('0x21')](_0xfd7130[_0xba40('0x44')][_0xba40('0x21')]);}_0x5cc0c6[_0xba40('0x48')]=qs['sort'](_0xfd7130[_0xba40('0x44')]['sort']);_0x5cc0c6[_0xba40('0x4a')]=qs[_0xba40('0x42')](_[_0xba40('0x4b')](_0xfd7130[_0xba40('0x44')],_0x369ca8[_0xba40('0x42')]));_0x5cc0c6['where'][_0xba40('0xc2')]=_0x25f447['id'];if(_0xfd7130[_0xba40('0x44')][_0xba40('0x84')]){_0x5cc0c6[_0xba40('0x4a')]=_[_0xba40('0x9e')](_0x5cc0c6[_0xba40('0x4a')],{'$or':_[_0xba40('0x30')](_0x5cc0c6[_0xba40('0x46')],function(_0x3a63c8){var _0x2a862d={};_0x2a862d[_0x3a63c8]={'$like':'%'+_0xfd7130[_0xba40('0x44')][_0xba40('0x84')]+'%'};return _0x2a862d;})});}if(_0xfd7130[_0xba40('0x44')][_0xba40('0xd5')]){var _0x39ea03=_0xfd7130[_0xba40('0x44')][_0xba40('0xd5')][_0xba40('0x69')](',');var _0x2d7450={};_0x2d7450[_0x39ea03[0x0]]={'$gte':moment(_0x39ea03[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x5cc0c6[_0xba40('0x4a')]=_[_0xba40('0x9e')](_0x5cc0c6[_0xba40('0x4a')],_0x2d7450);}_0x5cc0c6=_[_0xba40('0x9e')]({},_0x5cc0c6,_0xfd7130[_0xba40('0xcb')]);return db[_0xba40('0xd1')][_0xba40('0x20')]({'where':_0x5cc0c6[_0xba40('0x4a')]})[_0xba40('0x29')](function(_0x46ebcc){_0x1398ab[_0xba40('0x20')]=_0x46ebcc;if(_0xfd7130[_0xba40('0x44')]['includeAll']){_0x5cc0c6[_0xba40('0xca')]=[{'all':!![]}];}return db[_0xba40('0xd1')][_0xba40('0xd6')](_0x5cc0c6);})[_0xba40('0x29')](function(_0x1ee174){_0x1398ab[_0xba40('0xd7')]=_0x1ee174;return _0x1398ab;});}})[_0xba40('0x29')](respondWithFilteredResult(_0x510374,_0x5cc0c6))[_0xba40('0xc6')](handleError(_0x510374,null));};exports[_0xba40('0xd8')]=function(_0x278328,_0x20e2f6,_0x2b6fb0){return db[_0xba40('0x36')][_0xba40('0xcc')]({'where':{'id':_0x278328[_0xba40('0xc8')]['id']}})[_0xba40('0x29')](handleEntityNotFound(_0x20e2f6,null))[_0xba40('0x29')](function(_0x3ca2e9){if(_0x3ca2e9){return _0x3ca2e9[_0xba40('0xd9')](_0x278328['body'][_0xba40('0xd2')],_[_0xba40('0xda')](_0x278328[_0xba40('0xce')],[_0xba40('0xd2'),'id'])||{})['spread'](function(){return db[_0xba40('0xdb')][_0xba40('0xd6')]({'attributes':['id',_0xba40('0x40'),_0xba40('0x4e')],'where':{'id':_0x278328[_0xba40('0xce')][_0xba40('0xd2')]}});})[_0xba40('0x29')](function(_0x244ec2){socket[_0xba40('0xdc')]('mailInteractionTags:save',{'id':Number(_0x278328[_0xba40('0xc8')]['id']),'tags':_0x244ec2||[]});return{'id':Number(_0x278328['params']['id']),'tags':_0x244ec2||[]};});}})[_0xba40('0x29')](respondWithResult(_0x20e2f6,null))[_0xba40('0xc6')](handleError(_0x20e2f6,null));};exports[_0xba40('0xdd')]=function(_0x51fd06,_0xd1b8c,_0x5d77b0){return db[_0xba40('0x36')][_0xba40('0xcc')]({'where':{'id':_0x51fd06[_0xba40('0xc8')]['id']}})['then'](handleEntityNotFound(_0xd1b8c,null))[_0xba40('0x29')](function(_0xfaa30b){if(_0xfaa30b){return _0xfaa30b[_0xba40('0xdd')](_0x51fd06['query'][_0xba40('0xd2')]);}})['then'](respondWithStatusCode(_0xd1b8c,null))['catch'](handleError(_0xd1b8c,null));};exports[_0xba40('0xde')]=function(_0xd180ba,_0x19f299){var _0x22f146=moment()['unix']()[_0xba40('0x9c')]();var _0x4ee3d5=path['join'](config['root'],_0xba40('0xdf'),_0xba40('0xe0'),_0xba40('0xe1'));var _0x257505=path['join'](config[_0xba40('0xe2')],_0xba40('0xdf'),_0xba40('0xe0'),_0xba40('0xe3'));var _0x86e4c5=path[_0xba40('0xe4')](_0x4ee3d5,_0x22f146);var _0x40a50a=util[_0xba40('0xe5')](_0xba40('0xe6'),_0xd180ba[_0xba40('0xc8')]['id'],_0x22f146);var _0x2d88c7=path[_0xba40('0xe4')](_0x4ee3d5,_0x40a50a);var _0x3b0102=[];if(_0xd180ba['query'][_0xba40('0xe3')]){_0x3b0102[_0xba40('0x35')]({'model':db[_0xba40('0xe7')],'as':_0xba40('0xe8'),'raw':!![]});}var _0x2a75c9=[{'model':db[_0xba40('0xd1')],'as':'Messages','attributes':['id',_0xba40('0xce'),_0xba40('0x4f'),'to','cc','bcc',_0xba40('0xe9'),_0xba40('0x7a')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x3b0102}];return db[_0xba40('0x36')][_0xba40('0xcc')]({'where':{'id':_0xd180ba[_0xba40('0xc8')]['id']},'include':_0x2a75c9})[_0xba40('0x29')](handleEntityNotFound(_0x19f299,null))['then'](function(_0x306270){if(_0x306270&&_0x306270[_0xba40('0xea')]){var _0x2dd279=_0x306270[_0xba40('0xeb')]({'plain':!![]});fs['mkdirSync'](_0x86e4c5);return BPromise[_0xba40('0xec')](_0x2dd279[_0xba40('0xea')],function(_0x44b308,_0x370ed2){var _0x2def9f={'from':_0x44b308[_0xba40('0x4f')],'to':_0x44b308['to'],'subject':_0x44b308[_0xba40('0xe9')],'html':_0x44b308[_0xba40('0xce')],'headers':{'Date':moment(_0x44b308[_0xba40('0x7a')])[_0xba40('0xe5')](_0xba40('0xed'))},'attachments':[]};if(_0x44b308['cc']){_0x2def9f[_0xba40('0xee')]['Cc']=_0x44b308['cc'];}if(_0x44b308[_0xba40('0xef')]){_0x2def9f[_0xba40('0xee')][_0xba40('0xf0')]=_0x44b308[_0xba40('0xef')];}return new BPromise(function(_0x398124,_0x40264d){if(_0x44b308[_0xba40('0xe8')]){for(var _0x2d1807=0x0;_0x2d1807<_0x44b308[_0xba40('0xe8')]['length'];_0x2d1807++){var _0x1175a1=_0x44b308[_0xba40('0xe8')][_0x2d1807];var _0xd5edac=path['join'](_0x257505,_0x1175a1[_0xba40('0xf1')]);if(fs[_0xba40('0xf2')](_0xd5edac)){_0x2def9f[_0xba40('0xe3')][_0xba40('0x35')]({'name':_0x1175a1['name'],'contentType':_0x1175a1[_0xba40('0x3e')],'data':fs['readFileSync'](_0xd5edac)});}}}emlformat[_0xba40('0xf3')](_0x2def9f,function(_0x5b0178,_0x55b035){if(_0x5b0178)return _0x40264d(_0x5b0178);fs[_0xba40('0xf4')](path[_0xba40('0xe4')](_0x86e4c5,util[_0xba40('0xe5')](_0xba40('0xf5'),_0x370ed2)),_0x55b035);return _0x398124(_0x55b035);});});})['then'](function(){return new BPromise(function(_0x1d43e7,_0x450cae){zipdir(_0x86e4c5,{'saveTo':_0x2d88c7},function(_0x2eb9d6,_0x485d90){if(_0x2eb9d6)return _0x450cae(_0x2eb9d6);return _0x1d43e7(_0x485d90);});})['then'](function(){return new BPromise(function(_0x4f08b5,_0x4537e1){rimraf(_0x86e4c5,function(_0x423111){if(_0x423111)_0x4537e1(_0x423111);return _0x4f08b5();});});})[_0xba40('0x29')](function(){return _0x19f299['download'](_0x2d88c7,_0x40a50a,function(_0x2fd293){if(_0x2fd293){console['log'](_0xba40('0xf6'),_0x2fd293);}else{fs['unlinkSync'](_0x2d88c7);}});});});}else{return _0x19f299['sendStatus'](0xc8);}})[_0xba40('0xc6')](handleError(_0x19f299,null));};
\ No newline at end of file
+var _0x53ec=['u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.MailAccountId','mail_messages','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','find','unreadMessages','having','`\x20>\x200','Contact','$substring','value','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','ContactId','buildExpression','type','start','Tag','split','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','operator','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','text','some','compact','MailAccountId','concat','createdAt','parse','$lte','null','\x20IS\x20NULL','\x20=\x20?','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','filter','replace','isNumeric','i.id\x20LIKE\x20?','c.email\x20LIKE\x20?','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','t.id\x20IN\x20?','i.MailAccountId\x20IS\x20NOT\x20NULL','user','agent','getMailAccounts','isEmpty','i.MailAccountId\x20IS\x20NULL','i.MailAccountId\x20IN\x20?','role','sequelize','toString','keyBy','merge','a.key','Account.key','Account.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.closed','i.attach','i.lastMsgAt','i.disposition','i.secondDisposition','i.thirdDisposition','i.substatus','i.to','i.MailAccountId','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','MailInteractionId','Setting','enableEmailPreview','all','rows','show','params','keys','include','body','describe','addMessage','hasOwnProperty','$gte','format','YYYY-MM-DD\x20HH:mm:ss','options','includeAll','findAll','inlineCss','true','addTags','setTags','ids','omit','spread','emit','mailInteractionTags:save','removeTags','download','unix','join','root','files','attachments','transcript-%d-%s.zip','Attachment','Attachments','Messages','bcc','subject','get','mkdirSync','each','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','existsSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','moment','bluebird','util','lodash','juice','ioredis','../../components/parsers/advancedSearch','api','../../config/environment','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','end','offset','undefined','limit','count','status','set','Content-Range','update','then','destroy','sendStatus','error','stack','name','Users','map','fullname','TagIds','forEach','push','MailMessage','findOne','plainBody','-id','trimStart','catch','waiting','talking','unmanaged','closed','UserId','answered','index','MailInteraction','rawAttributes','model','query','intersection','attributes','fields','length','nolimit','order','sort','where','filters','pick','select','field','color','from','tools_tags','u.id','u.fullname','ui.MailInteractionId','user_has_mail_interactions','left_join','users'];(function(_0x4b7bb7,_0x39f014){var _0x19a88e=function(_0x53acc9){while(--_0x53acc9){_0x4b7bb7['push'](_0x4b7bb7['shift']());}};_0x19a88e(++_0x39f014);}(_0x53ec,0x192));var _0xc53e=function(_0x17e75e,_0x24753e){_0x17e75e=_0x17e75e-0x0;var _0x25f451=_0x53ec[_0x17e75e];return _0x25f451;};'use strict';var emlformat=require(_0xc53e('0x0'));var rimraf=require(_0xc53e('0x1'));var zipdir=require(_0xc53e('0x2'));var moment=require(_0xc53e('0x3'));var BPromise=require(_0xc53e('0x4'));var util=require(_0xc53e('0x5'));var path=require('path');var fs=require('fs');var _=require(_0xc53e('0x6'));var squel=require('squel');var juice=require(_0xc53e('0x7'));var Redis=require(_0xc53e('0x8'));var qs=require('../../components/parsers/qs');var as=require(_0xc53e('0x9'));var logger=require('../../config/logger')(_0xc53e('0xa'));var config=require(_0xc53e('0xb'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0xc53e('0xc'));config[_0xc53e('0xd')]=_[_0xc53e('0xe')](config[_0xc53e('0xd')],{'host':_0xc53e('0xf'),'port':0x18eb});var socket=require(_0xc53e('0x10'))(new Redis(config[_0xc53e('0xd')]));require(_0xc53e('0x11'))[_0xc53e('0x12')](socket);function respondWithStatusCode(_0x4b7cfa,_0x57e818){_0x57e818=_0x57e818||0xcc;return function(_0x35128a){if(_0x35128a){return _0x4b7cfa['sendStatus'](_0x57e818);}return _0x4b7cfa['status'](_0x57e818)[_0xc53e('0x13')]();};}function respondWithResult(_0x9ffbcb,_0x863fa){_0x863fa=_0x863fa||0xc8;return function(_0x4203aa){if(_0x4203aa){return _0x9ffbcb['status'](_0x863fa)['json'](_0x4203aa);}};}function respondWithFilteredResult(_0x1c06cd,_0x19a772){return function(_0x7cd798){if(_0x7cd798){var _0x3d2e17=typeof _0x19a772[_0xc53e('0x14')]===_0xc53e('0x15')&&typeof _0x19a772[_0xc53e('0x16')]===_0xc53e('0x15');var _0x455e4d=_0x7cd798[_0xc53e('0x17')];var _0x5b0a88=_0x3d2e17?0x0:_0x19a772[_0xc53e('0x14')];var _0x191567=_0x3d2e17?_0x7cd798[_0xc53e('0x17')]:_0x19a772[_0xc53e('0x14')]+_0x19a772[_0xc53e('0x16')];var _0x270c78;if(_0x191567>=_0x455e4d){_0x191567=_0x455e4d;_0x270c78=0xc8;}else{_0x270c78=0xce;}_0x1c06cd[_0xc53e('0x18')](_0x270c78);return _0x1c06cd[_0xc53e('0x19')](_0xc53e('0x1a'),_0x5b0a88+'-'+_0x191567+'/'+_0x455e4d)['json'](_0x7cd798);}return null;};}function saveUpdates(_0x546fab){return function(_0x35b7b2){if(_0x35b7b2){return _0x35b7b2[_0xc53e('0x1b')](_0x546fab)[_0xc53e('0x1c')](function(_0x2e85df){return _0x2e85df;});}return null;};}function removeEntity(_0x20066e){return function(_0x2cfe2b){if(_0x2cfe2b){return _0x2cfe2b[_0xc53e('0x1d')]()[_0xc53e('0x1c')](function(){_0x20066e[_0xc53e('0x18')](0xcc)[_0xc53e('0x13')]();});}};}function handleEntityNotFound(_0x17d825){return function(_0x44fd93){if(!_0x44fd93){_0x17d825[_0xc53e('0x1e')](0x194);}return _0x44fd93;};}function handleError(_0x4fb695,_0x47cfdd){_0x47cfdd=_0x47cfdd||0x1f4;return function(_0x531ede){logger[_0xc53e('0x1f')](_0x531ede[_0xc53e('0x20')]);if(_0x531ede[_0xc53e('0x21')]){delete _0x531ede[_0xc53e('0x21')];}_0x4fb695[_0xc53e('0x18')](_0x47cfdd)['send'](_0x531ede);};}function getInteractionUsers(_0x5e5377,_0xe06e42){return new BPromise(function(_0x496167,_0x1ae55e){try{if(_0xe06e42[_0x5e5377['id']]){_0x5e5377[_0xc53e('0x22')]=_[_0xc53e('0x23')](_0xe06e42[_0x5e5377['id']],function(_0x1166e6){return{'id':_0x1166e6['id'],'fullname':_0x1166e6[_0xc53e('0x24')]};});}}catch(_0x4df8cf){_0x1ae55e(_0x4df8cf);}_0x496167(_0x5e5377);});}function getInteractionTags(_0x398e7a,_0x4b9f6a){return new BPromise(function(_0x4d9a68,_0x5c65d3){try{if(_0x398e7a[_0xc53e('0x25')]){_0x398e7a['Tags']=[];_0x398e7a[_0xc53e('0x25')]['split'](',')[_0xc53e('0x26')](function(_0x5112d2){_0x398e7a['Tags'][_0xc53e('0x27')](_0x4b9f6a[_0x5112d2]);});}delete _0x398e7a[_0xc53e('0x25')];}catch(_0x42dec1){_0x5c65d3(_0x42dec1);}_0x4d9a68(_0x398e7a);});}function getLastMessageText(_0x2fa20b){return new BPromise(function(_0x6415f6,_0xf97d78){return db[_0xc53e('0x28')][_0xc53e('0x29')]({'where':{'$and':[{'MailInteractionId':_0x2fa20b['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':'out'},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xc53e('0x2a')],'order':_0xc53e('0x2b'),'raw':!![]})[_0xc53e('0x1c')](function(_0x56206b){if(_0x56206b&&_0x56206b[_0xc53e('0x2a')]){_0x2fa20b['lastMsgText']=_[_0xc53e('0x2c')](_0x56206b[_0xc53e('0x2a')]);}_0x6415f6(_0x2fa20b);})['catch'](function(_0x5a64e2){_0xf97d78(_0x5a64e2);});});}function updateMailInteraction(_0x3cd8a1,_0x42efad,_0x3f4547,_0x30d037){return new BPromise(function(_0x1b95c2,_0x45fedc){return getInteractionUsers(_0x3cd8a1,_0x3f4547)[_0xc53e('0x1c')](function(_0x168d25){return getInteractionTags(_0x168d25,_0x42efad);})['then'](function(_0x24e9e5){return getStateInteraction(_0x24e9e5);})[_0xc53e('0x1c')](function(_0x19020b){if(_0x30d037){_0x1b95c2(getLastMessageText(_0x19020b));}else{_0x1b95c2(_0x19020b);}})[_0xc53e('0x2d')](function(_0x1eca5b){_0x45fedc(_0x1eca5b);});});}function getStateInteraction(_0x12b32c){return new BPromise(function(_0x1920c8){_0x12b32c[_0xc53e('0x2e')]=0x0;_0x12b32c[_0xc53e('0x2f')]=0x0;_0x12b32c['answered']=0x0;_0x12b32c[_0xc53e('0x30')]=0x0;_0x12b32c['total']=0x0;if(!_0x12b32c[_0xc53e('0x31')]&&!_0x12b32c[_0xc53e('0x32')]){_0x12b32c['waiting']+=0x1;}if(!_0x12b32c[_0xc53e('0x31')]&&_0x12b32c[_0xc53e('0x32')]){_0x12b32c[_0xc53e('0x2f')]+=0x1;if(_0x12b32c['waiting']){_0x12b32c[_0xc53e('0x2e')]-=0x1;}}if(_0x12b32c[_0xc53e('0x31')]&&_0x12b32c[_0xc53e('0x32')]){_0x12b32c[_0xc53e('0x33')]+=0x1;if(_0x12b32c[_0xc53e('0x2f')]){_0x12b32c[_0xc53e('0x2f')]-=0x1;}}if(_0x12b32c[_0xc53e('0x31')]&&!_0x12b32c['UserId']){_0x12b32c[_0xc53e('0x30')]+=0x1;if(_0x12b32c[_0xc53e('0x2e')]){_0x12b32c[_0xc53e('0x2e')]-=0x1;}}_0x12b32c['total']+=0x1;_0x1920c8(_0x12b32c);});}exports[_0xc53e('0x34')]=function(_0x5e8ab7,_0xaa00cd){var _0x15052d={},_0x40c4f5={},_0xad1232={'count':0x0,'rows':[]};var _0x3036e7=_['map'](db[_0xc53e('0x35')][_0xc53e('0x36')],function(_0x4a5529){return{'name':_0x4a5529['fieldName'],'type':_0x4a5529['type']['key']};});_0x40c4f5[_0xc53e('0x37')]=_[_0xc53e('0x23')](_0x3036e7,'name');_0x40c4f5[_0xc53e('0x38')]=_['keys'](_0x5e8ab7['query']);_0x40c4f5['filters']=_[_0xc53e('0x39')](_0x40c4f5['model'],_0x40c4f5['query']);_0x15052d[_0xc53e('0x3a')]=_['intersection'](_0x40c4f5[_0xc53e('0x37')],qs[_0xc53e('0x3b')](_0x5e8ab7['query'][_0xc53e('0x3b')]));_0x15052d[_0xc53e('0x3a')]=_0x15052d['attributes'][_0xc53e('0x3c')]?_0x15052d['attributes']:_0x40c4f5['model'];if(!_0x5e8ab7['query']['hasOwnProperty'](_0xc53e('0x3d'))){_0x15052d[_0xc53e('0x16')]=qs[_0xc53e('0x16')](_0x5e8ab7['query'][_0xc53e('0x16')]);_0x15052d[_0xc53e('0x14')]=qs['offset'](_0x5e8ab7['query'][_0xc53e('0x14')]);}_0x15052d[_0xc53e('0x3e')]=qs[_0xc53e('0x3f')](_0x5e8ab7['query'][_0xc53e('0x3f')]);_0x15052d[_0xc53e('0x40')]=qs[_0xc53e('0x41')](_[_0xc53e('0x42')](_0x5e8ab7[_0xc53e('0x38')],_0x40c4f5[_0xc53e('0x41')]),_0x3036e7);var _0x372ce6=[];var _0x49b2e8=squel[_0xc53e('0x43')]()[_0xc53e('0x44')]('id')[_0xc53e('0x44')]('name')[_0xc53e('0x44')](_0xc53e('0x45'))[_0xc53e('0x46')](_0xc53e('0x47'));var _0xa7d256=squel[_0xc53e('0x43')]()['field'](_0xc53e('0x48'))[_0xc53e('0x44')](_0xc53e('0x49'))['field'](_0xc53e('0x4a'))[_0xc53e('0x46')](_0xc53e('0x4b'),'ui')[_0xc53e('0x4c')](_0xc53e('0x4d'),'u',_0xc53e('0x4e'));var _0x1a5a8f=squel[_0xc53e('0x43')]()[_0xc53e('0x46')](_0xc53e('0x4f'),'i')['left_join'](_0xc53e('0x50'),'c',_0xc53e('0x51'))[_0xc53e('0x4c')](_0xc53e('0x4d'),'o',_0xc53e('0x52'))['left_join']('mail_accounts','a',_0xc53e('0x53'))['left_join'](_0xc53e('0x54'),'me','me.MailInteractionId\x20=\x20i.id')[_0xc53e('0x4c')](_0xc53e('0x55'),'it',_0xc53e('0x56'))['left_join'](_0xc53e('0x47'),'t',_0xc53e('0x57'));var _0x395913=squel['expr']();var _0x2f7df2=[];var _0x501f0a=squel[_0xc53e('0x58')]();var _0x3f1ca5;if(_0x5e8ab7['query'][_0xc53e('0x59')]){_0x3f1ca5=as[_0xc53e('0x5a')](_0x5e8ab7['query'][_0xc53e('0x59')]);var _0x36d321=_0x3f1ca5[_0xc53e('0x5b')];for(var _0x1ff92d=0x0;_0x1ff92d<_0x3f1ca5[_0xc53e('0x5c')][_0xc53e('0x3c')];_0x1ff92d++){var _0x27b6d4=_0x3f1ca5[_0xc53e('0x5c')][_0x1ff92d];var _0x8e5630='i';var _0x219ed4=_[_0xc53e('0x5d')](_0x3036e7,['name',_0x27b6d4[_0xc53e('0x44')]]);if(!_0x219ed4){switch(_0x27b6d4['field']){case _0xc53e('0x5e'):if(_0x27b6d4['value']==0x1){_0x1a5a8f[_0xc53e('0x5f')]('`'+_0x27b6d4[_0xc53e('0x44')]+'`\x20=\x200');}else{_0x1a5a8f[_0xc53e('0x5f')]('`'+_0x27b6d4[_0xc53e('0x44')]+_0xc53e('0x60'));}break;case _0xc53e('0x61'):if(_0x27b6d4['operator']===_0xc53e('0x62')){if(_0x27b6d4[_0xc53e('0x63')]['split']('\x20')['length']>0x1){_0x395913[_0x36d321](_0xc53e('0x64'),qs['getFullTextValue'](_0x27b6d4['value']),null);}else{var _0x57c822='%'+_0x27b6d4[_0xc53e('0x63')]+'%';_0x395913[_0x36d321]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x57c822,_0x57c822,_0x57c822);}}else{_0x219ed4=_[_0xc53e('0x5d')](_0x3036e7,['name',_0xc53e('0x65')]);_0x27b6d4[_0xc53e('0x44')]=_0xc53e('0x65');_0x40c8ba=as[_0xc53e('0x66')](_0x8e5630,_0x219ed4[_0xc53e('0x67')],_0x27b6d4);_0x395913[_0x36d321](_0x40c8ba['text'],_0x40c8ba['value'][_0xc53e('0x68')],_0x40c8ba[_0xc53e('0x63')][_0xc53e('0x13')]);}break;case _0xc53e('0x69'):var _0x11278d=_0x27b6d4[_0xc53e('0x63')][_0xc53e('0x6a')](',')[_0xc53e('0x23')](function(_0x13bf71){return Number(_0x13bf71);});_0x11278d[_0xc53e('0x26')](function(_0x30333b){_0x501f0a['or'](_0xc53e('0x6b'),'%,'+_0x30333b+',%');});_0x2f7df2=_[_0xc53e('0x6c')](_0x2f7df2,_0x11278d);break;case'User':if(_0x27b6d4[_0xc53e('0x6d')]==='$substring'){_0x395913[_0x36d321](_0xc53e('0x6e'),'%'+_0x27b6d4[_0xc53e('0x63')]+'%',null);}else{_0x219ed4=_[_0xc53e('0x5d')](_0x3036e7,[_0xc53e('0x21'),_0xc53e('0x32')]);_0x27b6d4[_0xc53e('0x44')]=_0xc53e('0x32');_0x40c8ba=as[_0xc53e('0x66')](_0x8e5630,_0x219ed4['type'],_0x27b6d4);_0x395913[_0x36d321](_0x40c8ba['text'],_0x40c8ba['value'][_0xc53e('0x68')],_0x40c8ba[_0xc53e('0x63')][_0xc53e('0x13')]);}break;case _0xc53e('0x2a'):_0x40c8ba=as[_0xc53e('0x66')]('me',null,_0x27b6d4);_0x395913[_0x36d321](_0x40c8ba[_0xc53e('0x6f')],_0x40c8ba[_0xc53e('0x63')]['start'],_0x40c8ba['value']['end']);break;}}else{var _0x40c8ba=as[_0xc53e('0x66')](_0x8e5630,_0x219ed4['type'],_0x27b6d4);_0x395913[_0x36d321](_0x40c8ba[_0xc53e('0x6f')],_0x40c8ba[_0xc53e('0x63')][_0xc53e('0x68')],_0x40c8ba[_0xc53e('0x63')][_0xc53e('0x13')]);}}}else{var _0x20cb31=_(_0x5e8ab7['query'])['keys']()[_0xc53e('0x23')](function(_0xb7391){return _[_0xc53e('0x70')](_0x3036e7,[_0xc53e('0x21'),_0xb7391])?_0xb7391:undefined;})[_0xc53e('0x71')]()[_0xc53e('0x63')]();if(!_['isEmpty'](_0x20cb31)){_0x20cb31[_0xc53e('0x26')](function(_0x15f6cb){if(_0x15f6cb===_0xc53e('0x72')){_0x1a5a8f[_0xc53e('0x40')]('i.MailAccountId\x20IN\x20?',[][_0xc53e('0x73')](_0x5e8ab7[_0xc53e('0x38')][_0x15f6cb]));}else if(_0x15f6cb===_0xc53e('0x74')){var _0x22f311=JSON[_0xc53e('0x75')](_0x5e8ab7[_0xc53e('0x38')][_0x15f6cb])['$gte'];var _0x1020a0=JSON[_0xc53e('0x75')](_0x5e8ab7[_0xc53e('0x38')][_0x15f6cb])[_0xc53e('0x76')];_0x1a5a8f['where']('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x22f311,_0x1020a0);}else{if(_0x5e8ab7[_0xc53e('0x38')][_0x15f6cb]===_0xc53e('0x77')){_0x1a5a8f[_0xc53e('0x40')]('i.'+_0x15f6cb+_0xc53e('0x78'));}else{_0x1a5a8f['where']('i.'+_0x15f6cb+_0xc53e('0x79'),_0x5e8ab7['query'][_0x15f6cb]);}}});}if(_0x5e8ab7[_0xc53e('0x38')]['read']){if(_0x5e8ab7[_0xc53e('0x38')]['read']==0x1){_0x1a5a8f[_0xc53e('0x5f')](_0xc53e('0x7a'));}else{_0x1a5a8f['having'](_0xc53e('0x7b'));}}if(_0x5e8ab7[_0xc53e('0x38')]['tag']){_0x2f7df2=_['isArray'](_0x5e8ab7[_0xc53e('0x38')][_0xc53e('0x7c')])?_0x5e8ab7['query']['tag']:new Array(_0x5e8ab7[_0xc53e('0x38')]['tag']);_0x2f7df2[_0xc53e('0x26')](function(_0x5bfdbb){_0x501f0a['or'](_0xc53e('0x6b'),'%,'+_0x5bfdbb+',%');});}if(_0x5e8ab7[_0xc53e('0x38')][_0xc53e('0x7d')]){var _0x388874=_0x5e8ab7[_0xc53e('0x38')][_0xc53e('0x7d')][_0xc53e('0x7e')]('\x5c','\x5c\x5c')[_0xc53e('0x7e')](/'/g,'\x27\x27');if(qs[_0xc53e('0x7f')](_0x388874)){_0x395913['or'](_0xc53e('0x80'),_0x388874+'%');}else if(qs['isEmail'](_0x388874)){_0x395913['or'](_0xc53e('0x81'),_0x388874+'%');}else{_0x395913['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xc53e('0x82')](_0x388874))['or'](_0xc53e('0x83'),qs[_0xc53e('0x82')](_0x388874));}}}_0x1a5a8f[_0xc53e('0x40')](_0x395913);_0x1a5a8f[_0xc53e('0x84')](_0xc53e('0x85'));var _0x1e3499={'type':db[_0xc53e('0x86')][_0xc53e('0x87')][_0xc53e('0x88')],'raw':!![]};var _0x5deb38=_0x1a5a8f[_0xc53e('0x89')]();_0x5deb38['field'](_0xc53e('0x85'));_0x5deb38[_0xc53e('0x44')](_0xc53e('0x8a'),'unreadMessages');if(_0x15052d[_0xc53e('0x3e')]){_0x15052d[_0xc53e('0x3e')][_0xc53e('0x26')](function(_0xec3738){var _0x3a84a2=_0xec3738[0x0]==='contactName'?_0xec3738[0x0]:'i.'+_0xec3738[0x0];_0x1a5a8f[_0xc53e('0x3e')](_0x3a84a2,_0xec3738[0x1]===_0xc53e('0x8b')?![]:!![]);});}if(!_['isEmpty'](_0x2f7df2)){_0x1a5a8f[_0xc53e('0x5f')](_0x501f0a);_0x5deb38[_0xc53e('0x40')](_0xc53e('0x8c'),_0x2f7df2);}BPromise['resolve']()[_0xc53e('0x1c')](function(){if(!_0x3f1ca5){if(_0x5e8ab7[_0xc53e('0x38')]['MailAccountId'])return;_0x5deb38[_0xc53e('0x40')](_0xc53e('0x8d'));_0x1a5a8f['where']('i.MailAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x5e8ab7[_0xc53e('0x8e')]['role']!==_0xc53e('0x8f'))return;return _0x5e8ab7[_0xc53e('0x8e')][_0xc53e('0x90')]({'attributes':['id'],'raw':!![]})['then'](function(_0xea93fa){if(_[_0xc53e('0x91')](_0xea93fa)){_0x5deb38[_0xc53e('0x40')]('i.MailAccountId\x20IS\x20NULL');_0x1a5a8f[_0xc53e('0x40')](_0xc53e('0x92'));}else{_0x5deb38[_0xc53e('0x40')](_0xc53e('0x93'),_[_0xc53e('0x23')](_0xea93fa,'id'));_0x1a5a8f['where'](_0xc53e('0x93'),_[_0xc53e('0x23')](_0xea93fa,'id'));}});})[_0xc53e('0x1c')](function(){if(_0x5e8ab7[_0xc53e('0x8e')][_0xc53e('0x94')]===_0xc53e('0x8f')&&!_0x3f1ca5&&!_0x5e8ab7[_0xc53e('0x38')][_0xc53e('0x72')])return[];return db[_0xc53e('0x95')]['query'](_0x5deb38[_0xc53e('0x96')](),_0x1e3499);})[_0xc53e('0x1c')](function(_0x1c06bc){_0xad1232[_0xc53e('0x17')]=_0x1c06bc[_0xc53e('0x3c')];if(_0xad1232[_0xc53e('0x17')]===0x0)return[];return db[_0xc53e('0x95')][_0xc53e('0x38')](_0x49b2e8[_0xc53e('0x96')](),_0x1e3499)['then'](function(_0x3a54ef){_0x372ce6=_[_0xc53e('0x97')](_0x3a54ef,'id');_0x1e3499=_[_0xc53e('0x98')](_0x1e3499,{'model':db[_0xc53e('0x35')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x5e8ab7['query'][_0xc53e('0x3b')]){_0x15052d[_0xc53e('0x3a')][_0xc53e('0x26')](function(_0x92c9bc){_0x1a5a8f['field']('i.'+_0x92c9bc);});}else{_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0x8a'),_0xc53e('0x5e'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0x99'),_0xc53e('0x9a'));_0x1a5a8f[_0xc53e('0x44')]('a.mandatoryDisposition',_0xc53e('0x9b'));_0x1a5a8f['field'](_0xc53e('0x9c'),_0xc53e('0x9d'));_0x1a5a8f[_0xc53e('0x44')]('i.id');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0x9e'));_0x1a5a8f[_0xc53e('0x44')]('i.updatedAt');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0x9f'));_0x1a5a8f[_0xc53e('0x44')]('i.closedAt');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa0'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa1'));_0x1a5a8f[_0xc53e('0x44')]('i.lastMsgDirection');_0x1a5a8f['field']('i.subject');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa2'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa3'));_0x1a5a8f['field'](_0xc53e('0xa4'));_0x1a5a8f['field'](_0xc53e('0xa5'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa6'));_0x1a5a8f[_0xc53e('0x44')]('i.ContactId');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa7'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa8'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xa9'),_0xc53e('0xaa'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xab'),_0xc53e('0xac'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xad'),_0xc53e('0xae'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xaf'),_0xc53e('0xb0'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xb1'),_0xc53e('0xb2'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xb3'),_0xc53e('0xb4'));_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xb5'),_0xc53e('0xb6'));_0x1a5a8f['field'](_0xc53e('0xb7'),'Owner.internal');_0x1a5a8f[_0xc53e('0x44')](_0xc53e('0xb8'),'TagIds');}if(_0x15052d[_0xc53e('0x16')])_0x1a5a8f[_0xc53e('0x16')](_0x15052d[_0xc53e('0x16')]);if(_0x15052d[_0xc53e('0x14')])_0x1a5a8f[_0xc53e('0x14')](_0x15052d[_0xc53e('0x14')]);return db[_0xc53e('0x95')][_0xc53e('0x38')](_0x1a5a8f[_0xc53e('0x96')](),_0x1e3499);})['then'](function(_0x37c8e6){if(_0x37c8e6['length']>0x0)_0xa7d256[_0xc53e('0x40')](_0xc53e('0xb9'),_[_0xc53e('0x23')](_0x37c8e6,'id'));return db[_0xc53e('0x95')][_0xc53e('0x38')](_0xa7d256[_0xc53e('0x96')](),_0x1e3499)[_0xc53e('0x1c')](function(_0x38dae0){var _0x42a005=_[_0xc53e('0xba')](_0x38dae0,_0xc53e('0xbb'));var _0xa5a39d=[];return db[_0xc53e('0xbc')]['findOne']({'attributes':[_0xc53e('0xbd')],'raw':!![]})['then'](function(_0x2f7842){var _0x251dea=_0x2f7842[_0xc53e('0xbd')];_0x37c8e6[_0xc53e('0x26')](function(_0x5a2a2f){_0xa5a39d['push'](updateMailInteraction(_0x5a2a2f,_0x372ce6,_0x42a005,_0x251dea));});return BPromise[_0xc53e('0xbe')](_0xa5a39d);});});});})[_0xc53e('0x1c')](function(_0x349308){_0xad1232[_0xc53e('0xbf')]=_0x349308;return _0xad1232;})['then'](respondWithFilteredResult(_0xaa00cd,_0x15052d))['catch'](handleError(_0xaa00cd,null));};exports[_0xc53e('0xc0')]=function(_0x162568,_0x5be038){var _0x3628c3={'raw':![],'where':{'id':_0x162568[_0xc53e('0xc1')]['id']}},_0x2faa4e={};_0x2faa4e['model']=_[_0xc53e('0xc2')](db[_0xc53e('0x35')][_0xc53e('0x36')]);_0x2faa4e[_0xc53e('0x38')]=_[_0xc53e('0xc2')](_0x162568['query']);_0x2faa4e[_0xc53e('0x41')]=_[_0xc53e('0x39')](_0x2faa4e[_0xc53e('0x37')],_0x2faa4e[_0xc53e('0x38')]);_0x3628c3[_0xc53e('0x3a')]=_[_0xc53e('0x39')](_0x2faa4e[_0xc53e('0x37')],qs[_0xc53e('0x3b')](_0x162568[_0xc53e('0x38')][_0xc53e('0x3b')]));_0x3628c3[_0xc53e('0x3a')]=_0x3628c3[_0xc53e('0x3a')][_0xc53e('0x3c')]?_0x3628c3['attributes']:_0x2faa4e[_0xc53e('0x37')];if(_0x162568[_0xc53e('0x38')]['includeAll']){_0x3628c3[_0xc53e('0xc3')]=[{'all':!![]}];}_0x3628c3=_['merge']({},_0x3628c3,_0x162568['options']);return db[_0xc53e('0x35')]['find'](_0x3628c3)[_0xc53e('0x1c')](handleEntityNotFound(_0x5be038,null))['then'](respondWithResult(_0x5be038,null))[_0xc53e('0x2d')](handleError(_0x5be038,null));};exports['create']=function(_0x457aac,_0x376d94){return db[_0xc53e('0x35')]['create'](_0x457aac[_0xc53e('0xc4')],{})['then'](respondWithResult(_0x376d94,0xc9))[_0xc53e('0x2d')](handleError(_0x376d94,null));};exports[_0xc53e('0x1b')]=function(_0x1c3cb2,_0x1fd95d){if(_0x1c3cb2[_0xc53e('0xc4')]['id']){delete _0x1c3cb2[_0xc53e('0xc4')]['id'];}return db[_0xc53e('0x35')][_0xc53e('0x5d')]({'where':{'id':_0x1c3cb2[_0xc53e('0xc1')]['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x1fd95d,null))['then'](saveUpdates(_0x1c3cb2['body'],null))[_0xc53e('0x1c')](respondWithResult(_0x1fd95d,null))['catch'](handleError(_0x1fd95d,null));};exports[_0xc53e('0x1d')]=function(_0xbc960,_0x14baae){return db[_0xc53e('0x35')][_0xc53e('0x5d')]({'where':{'id':_0xbc960[_0xc53e('0xc1')]['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x14baae,null))[_0xc53e('0x1c')](removeEntity(_0x14baae,null))['catch'](handleError(_0x14baae,null));};exports[_0xc53e('0xc5')]=function(_0x4e46bf,_0x34cb12){return db[_0xc53e('0x35')][_0xc53e('0xc5')]()[_0xc53e('0x1c')](respondWithResult(_0x34cb12,null))[_0xc53e('0x2d')](handleError(_0x34cb12,null));};exports[_0xc53e('0xc6')]=function(_0x227e0c,_0x4c0802){return db[_0xc53e('0x28')][_0xc53e('0x5d')]({'where':{'id':_0x227e0c[_0xc53e('0xc1')]['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x4c0802,null))[_0xc53e('0x1c')](function(_0x590fb6){if(_0x590fb6){return _0x590fb6[_0xc53e('0xc6')](_0x227e0c[_0xc53e('0xc4')]['ids'],_['omit'](_0x227e0c[_0xc53e('0xc4')],['ids','id'])||{});}})[_0xc53e('0x1c')](respondWithResult(_0x4c0802,null))[_0xc53e('0x2d')](handleError(_0x4c0802,null));};exports['getMessages']=function(_0x4dc196,_0x258eea){var _0x4e23d8={'raw':![],'where':{}};var _0x204208={};var _0x4d43e1={'count':0x0,'rows':[]};return db[_0xc53e('0x35')][_0xc53e('0x29')]({'where':{'id':_0x4dc196[_0xc53e('0xc1')]['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x258eea,null))[_0xc53e('0x1c')](function(_0x49bbc9){if(_0x49bbc9){_0x204208[_0xc53e('0x37')]=_['keys'](db['MailMessage'][_0xc53e('0x36')]);_0x204208[_0xc53e('0x38')]=_[_0xc53e('0xc2')](_0x4dc196[_0xc53e('0x38')]);_0x204208[_0xc53e('0x41')]=_[_0xc53e('0x39')](_0x204208[_0xc53e('0x37')],_0x204208[_0xc53e('0x38')]);_0x4e23d8[_0xc53e('0x3a')]=_[_0xc53e('0x39')](_0x204208[_0xc53e('0x37')],qs[_0xc53e('0x3b')](_0x4dc196['query'][_0xc53e('0x3b')]));_0x4e23d8[_0xc53e('0x3a')]=_0x4e23d8[_0xc53e('0x3a')][_0xc53e('0x3c')]?_0x4e23d8[_0xc53e('0x3a')]:_0x204208['model'];if(!_0x4dc196['query'][_0xc53e('0xc7')](_0xc53e('0x3d'))){_0x4e23d8[_0xc53e('0x16')]=qs[_0xc53e('0x16')](_0x4dc196[_0xc53e('0x38')][_0xc53e('0x16')]);_0x4e23d8[_0xc53e('0x14')]=qs[_0xc53e('0x14')](_0x4dc196[_0xc53e('0x38')][_0xc53e('0x14')]);}_0x4e23d8[_0xc53e('0x3e')]=qs[_0xc53e('0x3f')](_0x4dc196[_0xc53e('0x38')]['sort']);_0x4e23d8[_0xc53e('0x40')]=qs[_0xc53e('0x41')](_['pick'](_0x4dc196[_0xc53e('0x38')],_0x204208[_0xc53e('0x41')]));_0x4e23d8[_0xc53e('0x40')]['MailInteractionId']=_0x49bbc9['id'];if(_0x4dc196['query'][_0xc53e('0x7d')]){_0x4e23d8[_0xc53e('0x40')]=_[_0xc53e('0x98')](_0x4e23d8[_0xc53e('0x40')],{'$or':_['map'](_0x4e23d8[_0xc53e('0x3a')],function(_0x8be8f5){var _0xbcbbc5={};_0xbcbbc5[_0x8be8f5]={'$like':'%'+_0x4dc196['query']['filter']+'%'};return _0xbcbbc5;})});}if(_0x4dc196[_0xc53e('0x38')][_0xc53e('0xc8')]){var _0x186a02=_0x4dc196['query'][_0xc53e('0xc8')][_0xc53e('0x6a')](',');var _0x4ae803={};_0x4ae803[_0x186a02[0x0]]={'$gte':moment(_0x186a02[0x1])[_0xc53e('0xc9')](_0xc53e('0xca'))};_0x4e23d8[_0xc53e('0x40')]=_[_0xc53e('0x98')](_0x4e23d8[_0xc53e('0x40')],_0x4ae803);}_0x4e23d8=_['merge']({},_0x4e23d8,_0x4dc196[_0xc53e('0xcb')]);return db[_0xc53e('0x28')][_0xc53e('0x17')]({'where':_0x4e23d8['where']})['then'](function(_0x10f044){_0x4d43e1[_0xc53e('0x17')]=_0x10f044;if(_0x4dc196[_0xc53e('0x38')][_0xc53e('0xcc')]){_0x4e23d8[_0xc53e('0xc3')]=[{'all':!![]}];}return db['MailMessage'][_0xc53e('0xcd')](_0x4e23d8);})['then'](function(_0x22ee61){if(_0x4dc196[_0xc53e('0x38')][_0xc53e('0xce')]===_0xc53e('0xcf')){for(var _0x3b6672=0x0;_0x3b6672<_0x22ee61[_0xc53e('0x3c')];_0x3b6672++){_0x22ee61[_0x3b6672][_0xc53e('0xc4')]=juice(_0x22ee61[_0x3b6672][_0xc53e('0xc4')]);}}_0x4d43e1[_0xc53e('0xbf')]=_0x22ee61;return _0x4d43e1;});}})['then'](respondWithFilteredResult(_0x258eea,_0x4e23d8))[_0xc53e('0x2d')](handleError(_0x258eea,null));};exports[_0xc53e('0xd0')]=function(_0x456563,_0x19957d){return db[_0xc53e('0x35')][_0xc53e('0x5d')]({'where':{'id':_0x456563['params']['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x19957d,null))[_0xc53e('0x1c')](function(_0x3db2cd){if(_0x3db2cd){return _0x3db2cd[_0xc53e('0xd1')](_0x456563[_0xc53e('0xc4')][_0xc53e('0xd2')],_[_0xc53e('0xd3')](_0x456563[_0xc53e('0xc4')],['ids','id'])||{})[_0xc53e('0xd4')](function(){return db['Tag'][_0xc53e('0xcd')]({'attributes':['id',_0xc53e('0x21'),_0xc53e('0x45')],'where':{'id':_0x456563[_0xc53e('0xc4')]['ids']}});})[_0xc53e('0x1c')](function(_0x266956){socket[_0xc53e('0xd5')](_0xc53e('0xd6'),{'id':Number(_0x456563[_0xc53e('0xc1')]['id']),'tags':_0x266956||[]});return{'id':Number(_0x456563[_0xc53e('0xc1')]['id']),'tags':_0x266956||[]};});}})[_0xc53e('0x1c')](respondWithResult(_0x19957d,null))[_0xc53e('0x2d')](handleError(_0x19957d,null));};exports[_0xc53e('0xd7')]=function(_0x14e64c,_0x1d6421){return db[_0xc53e('0x35')][_0xc53e('0x5d')]({'where':{'id':_0x14e64c[_0xc53e('0xc1')]['id']}})[_0xc53e('0x1c')](handleEntityNotFound(_0x1d6421,null))[_0xc53e('0x1c')](function(_0x2085b0){if(_0x2085b0){return _0x2085b0[_0xc53e('0xd7')](_0x14e64c['query']['ids']);}})[_0xc53e('0x1c')](respondWithStatusCode(_0x1d6421,null))[_0xc53e('0x2d')](handleError(_0x1d6421,null));};exports[_0xc53e('0xd8')]=function(_0x1d5e24,_0x1ee499){var _0x2767e3=moment()[_0xc53e('0xd9')]()[_0xc53e('0x96')]();var _0x3613d7=path[_0xc53e('0xda')](config[_0xc53e('0xdb')],'server',_0xc53e('0xdc'),'tmp');var _0x41b78c=path[_0xc53e('0xda')](config[_0xc53e('0xdb')],'server',_0xc53e('0xdc'),_0xc53e('0xdd'));var _0xbca6e4=path[_0xc53e('0xda')](_0x3613d7,_0x2767e3);var _0x121214=util[_0xc53e('0xc9')](_0xc53e('0xde'),_0x1d5e24['params']['id'],_0x2767e3);var _0x3a1978=path[_0xc53e('0xda')](_0x3613d7,_0x121214);var _0xaaf0c8=[];if(_0x1d5e24[_0xc53e('0x38')][_0xc53e('0xdd')]){_0xaaf0c8['push']({'model':db[_0xc53e('0xdf')],'as':_0xc53e('0xe0'),'raw':!![]});}var _0x53853a=[{'model':db[_0xc53e('0x28')],'as':_0xc53e('0xe1'),'attributes':['id','body',_0xc53e('0x46'),'to','cc',_0xc53e('0xe2'),_0xc53e('0xe3'),_0xc53e('0x74')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0xaaf0c8}];return db[_0xc53e('0x35')][_0xc53e('0x5d')]({'where':{'id':_0x1d5e24['params']['id']},'include':_0x53853a})[_0xc53e('0x1c')](handleEntityNotFound(_0x1ee499,null))[_0xc53e('0x1c')](function(_0x503976){if(_0x503976&&_0x503976[_0xc53e('0xe1')]){var _0x41e169=_0x503976[_0xc53e('0xe4')]({'plain':!![]});fs[_0xc53e('0xe5')](_0xbca6e4);return BPromise[_0xc53e('0xe6')](_0x41e169[_0xc53e('0xe1')],function(_0x1535bd,_0xb94a71){var _0xbcbe2e={'from':_0x1535bd['from'],'to':_0x1535bd['to'],'subject':_0x1535bd[_0xc53e('0xe3')],'html':htmlEntities[_0xc53e('0xe7')](_0x1535bd[_0xc53e('0xc4')]),'headers':{'Date':moment(_0x1535bd['createdAt'])[_0xc53e('0xc9')](_0xc53e('0xe8'))},'attachments':[]};if(_0x1535bd['cc']){_0xbcbe2e['headers']['Cc']=_0x1535bd['cc'];}if(_0x1535bd[_0xc53e('0xe2')]){_0xbcbe2e[_0xc53e('0xe9')][_0xc53e('0xea')]=_0x1535bd[_0xc53e('0xe2')];}return new BPromise(function(_0x19c9f0,_0x258b57){if(_0x1535bd['Attachments']){for(var _0x3b7fdc=0x0;_0x3b7fdc<_0x1535bd['Attachments']['length'];_0x3b7fdc++){var _0x109a05=_0x1535bd[_0xc53e('0xe0')][_0x3b7fdc];var _0x5672e2=path[_0xc53e('0xda')](_0x41b78c,_0x109a05['basename']);if(fs[_0xc53e('0xeb')](_0x5672e2)){_0xbcbe2e[_0xc53e('0xdd')]['push']({'name':_0x109a05[_0xc53e('0x21')],'contentType':_0x109a05[_0xc53e('0x67')],'data':fs['readFileSync'](_0x5672e2)});}}}emlformat[_0xc53e('0xec')](_0xbcbe2e,function(_0x3abb4e,_0x94f8d4){if(_0x3abb4e)return _0x258b57(_0x3abb4e);fs[_0xc53e('0xed')](path[_0xc53e('0xda')](_0xbca6e4,util[_0xc53e('0xc9')](_0xc53e('0xee'),_0xb94a71)),_0x94f8d4);return _0x19c9f0(_0x94f8d4);});});})[_0xc53e('0x1c')](function(){return new BPromise(function(_0x5c10ad,_0x5cae03){zipdir(_0xbca6e4,{'saveTo':_0x3a1978},function(_0x5ec237,_0x4a9220){if(_0x5ec237)return _0x5cae03(_0x5ec237);return _0x5c10ad(_0x4a9220);});})[_0xc53e('0x1c')](function(){return new BPromise(function(_0x3f2db3,_0x3580ee){rimraf(_0xbca6e4,function(_0x1f5769){if(_0x1f5769)_0x3580ee(_0x1f5769);return _0x3f2db3();});});})['then'](function(){return _0x1ee499[_0xc53e('0xd8')](_0x3a1978,_0x121214,function(_0x3dd6b0){if(!_0x3dd6b0)fs[_0xc53e('0xef')](_0x3a1978);});});});}else{return _0x1ee499[_0xc53e('0x1e')](0xc8);}})['catch'](handleError(_0x1ee499,null));};
\ No newline at end of file