Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index f09cf83..d5a4154 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x16ce=['root','files','tmp','server','attachments','transcript-%d-%s.zip','Messages','bcc','subject','get','mkdirSync','each','decode','format','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','existsSync','build','writeFileSync','message%d.eml','rimraf','zip-dir','moment','bluebird','util','path','ioredis','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','count','limit','Content-Range','destroy','then','error','stack','name','send','map','fullname','TagIds','Tags','split','forEach','push','findOne','out','-id','plainBody','lastMsgText','trimStart','catch','waiting','talking','answered','unmanaged','total','closed','UserId','index','MailInteraction','rawAttributes','fieldName','type','key','query','keys','filters','intersection','attributes','fields','length','model','nolimit','order','sort','pick','select','field','color','from','tools_tags','u.id','u.fullname','ui.MailInteractionId','user_has_mail_interactions','left_join','users','mail_interactions','cm_contacts','o.id\x20=\x20i.UserId','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','sqlOperator','conditions','find','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','operator','$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','ContactId','text','Tag','union','User','buildExpression','start','some','isEmpty','MailAccountId','where','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','replace','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','i.id','Sequelize','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','t.id\x20IN\x20?','i.MailAccountId\x20IS\x20NOT\x20NULL','user','role','getMailAccounts','i.MailAccountId\x20IS\x20NULL','i.MailAccountId\x20IN\x20?','sequelize','toString','keyBy','a.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','contactName','i.createdAt','i.closed','i.closedAt','i.lastMsgAt','i.lastMsgDirection','i.subject','i.disposition','i.secondDisposition','i.substatus','i.to','i.UserId','Contact.firstName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','ui.MailInteractionId\x20IN\x20?','groupBy','Setting','enableEmailPreview','rows','includeAll','merge','options','body','update','params','describe','addMessage','MailMessage','ids','omit','getMessages','hasOwnProperty','MailInteractionId','filter','$gte','include','inlineCss','setTags','findAll','emit','mailInteractionTags:save','removeTags','download','unix','join'];(function(_0xf46ea,_0xd97598){var _0x363349=function(_0x405ad8){while(--_0x405ad8){_0xf46ea['push'](_0xf46ea['shift']());}};_0x363349(++_0xd97598);}(_0x16ce,0xfb));var _0xe16c=function(_0x3edd83,_0x56ddda){_0x3edd83=_0x3edd83-0x0;var _0x3c9226=_0x16ce[_0x3edd83];return _0x3c9226;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xe16c('0x0'));var zipdir=require(_0xe16c('0x1'));var moment=require(_0xe16c('0x2'));var BPromise=require(_0xe16c('0x3'));var util=require(_0xe16c('0x4'));var path=require(_0xe16c('0x5'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var juice=require('juice');var Redis=require(_0xe16c('0x6'));var qs=require('../../components/parsers/qs');var as=require(_0xe16c('0x7'));var logger=require(_0xe16c('0x8'))(_0xe16c('0x9'));var config=require(_0xe16c('0xa'));var db=require(_0xe16c('0xb'))['db'];var htmlEntities=require(_0xe16c('0xc'));config[_0xe16c('0xd')]=_[_0xe16c('0xe')](config['redis'],{'host':_0xe16c('0xf'),'port':0x18eb});var socket=require(_0xe16c('0x10'))(new Redis(config[_0xe16c('0xd')]));require(_0xe16c('0x11'))[_0xe16c('0x12')](socket);function respondWithStatusCode(_0x280e21,_0x36d6b9){_0x36d6b9=_0x36d6b9||0xcc;return function(_0x3d601a){if(_0x3d601a){return _0x280e21[_0xe16c('0x13')](_0x36d6b9);}return _0x280e21[_0xe16c('0x14')](_0x36d6b9)[_0xe16c('0x15')]();};}function respondWithResult(_0x4841c1,_0x160a2d){_0x160a2d=_0x160a2d||0xc8;return function(_0x3cbc7e){if(_0x3cbc7e){return _0x4841c1[_0xe16c('0x14')](_0x160a2d)[_0xe16c('0x16')](_0x3cbc7e);}};}function respondWithFilteredResult(_0x54c1b3,_0x54c384){return function(_0xbc2d25){if(_0xbc2d25){var _0x1db688=typeof _0x54c384[_0xe16c('0x17')]===_0xe16c('0x18')&&typeof _0x54c384['limit']===_0xe16c('0x18');var _0x4955f8=_0xbc2d25[_0xe16c('0x19')];var _0x7a62b9=_0x1db688?0x0:_0x54c384[_0xe16c('0x17')];var _0x5b7439=_0x1db688?_0xbc2d25[_0xe16c('0x19')]:_0x54c384[_0xe16c('0x17')]+_0x54c384[_0xe16c('0x1a')];var _0x3bb637;if(_0x5b7439>=_0x4955f8){_0x5b7439=_0x4955f8;_0x3bb637=0xc8;}else{_0x3bb637=0xce;}_0x54c1b3[_0xe16c('0x14')](_0x3bb637);return _0x54c1b3['set'](_0xe16c('0x1b'),_0x7a62b9+'-'+_0x5b7439+'/'+_0x4955f8)[_0xe16c('0x16')](_0xbc2d25);}return null;};}function saveUpdates(_0x22fe04){return function(_0x51068c){if(_0x51068c){return _0x51068c['update'](_0x22fe04)['then'](function(_0x30e657){return _0x30e657;});}return null;};}function removeEntity(_0x23fe64){return function(_0x611939){if(_0x611939){return _0x611939[_0xe16c('0x1c')]()[_0xe16c('0x1d')](function(){_0x23fe64[_0xe16c('0x14')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2bee3b){return function(_0xf660c0){if(!_0xf660c0){_0x2bee3b[_0xe16c('0x13')](0x194);}return _0xf660c0;};}function handleError(_0x9909dc,_0x5a88ed){_0x5a88ed=_0x5a88ed||0x1f4;return function(_0x27eb44){logger[_0xe16c('0x1e')](_0x27eb44[_0xe16c('0x1f')]);if(_0x27eb44[_0xe16c('0x20')]){delete _0x27eb44[_0xe16c('0x20')];}_0x9909dc[_0xe16c('0x14')](_0x5a88ed)[_0xe16c('0x21')](_0x27eb44);};}function getInteractionUsers(_0x8a9b36,_0x545d72){return new BPromise(function(_0x262f20,_0x9fd053){try{if(_0x545d72[_0x8a9b36['id']]){_0x8a9b36['Users']=_[_0xe16c('0x22')](_0x545d72[_0x8a9b36['id']],function(_0x5b6ca6){return{'id':_0x5b6ca6['id'],'fullname':_0x5b6ca6[_0xe16c('0x23')]};});}}catch(_0x4f8a2f){_0x9fd053(_0x4f8a2f);}_0x262f20(_0x8a9b36);});}function getInteractionTags(_0x27cc66,_0x2b9300){return new BPromise(function(_0x234c26,_0x156de3){try{if(_0x27cc66[_0xe16c('0x24')]){_0x27cc66[_0xe16c('0x25')]=[];_0x27cc66[_0xe16c('0x24')][_0xe16c('0x26')](',')[_0xe16c('0x27')](function(_0x1dbb43){_0x27cc66['Tags'][_0xe16c('0x28')](_0x2b9300[_0x1dbb43]);});}delete _0x27cc66[_0xe16c('0x24')];}catch(_0x397682){_0x156de3(_0x397682);}_0x234c26(_0x27cc66);});}function getLastMessageText(_0x53469e){return new BPromise(function(_0x209692,_0x48d6b3){return db['MailMessage'][_0xe16c('0x29')]({'where':{'$and':[{'MailInteractionId':_0x53469e['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xe16c('0x2a')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':['plainBody'],'order':_0xe16c('0x2b'),'raw':!![]})[_0xe16c('0x1d')](function(_0x18af56){if(_0x18af56&&_0x18af56[_0xe16c('0x2c')]){_0x53469e[_0xe16c('0x2d')]=_[_0xe16c('0x2e')](_0x18af56['plainBody']);}_0x209692(_0x53469e);})[_0xe16c('0x2f')](function(_0x19c8de){_0x48d6b3(_0x19c8de);});});}function updateMailInteraction(_0x5c326b,_0x320f91,_0x437a08,_0x2ba475){return new BPromise(function(_0x14729b,_0x1ff3f7){return getInteractionUsers(_0x5c326b,_0x437a08)[_0xe16c('0x1d')](function(_0x15d54a){return getInteractionTags(_0x15d54a,_0x320f91);})['then'](function(_0x290bd4){return getStateInteraction(_0x290bd4);})[_0xe16c('0x1d')](function(_0x1bf4e3){if(_0x2ba475){_0x14729b(getLastMessageText(_0x1bf4e3));}else{_0x14729b(_0x1bf4e3);}})[_0xe16c('0x2f')](function(_0x25cc75){_0x1ff3f7(_0x25cc75);});});}function getStateInteraction(_0x465c23){return new BPromise(function(_0x15564e){_0x465c23[_0xe16c('0x30')]=0x0;_0x465c23[_0xe16c('0x31')]=0x0;_0x465c23[_0xe16c('0x32')]=0x0;_0x465c23[_0xe16c('0x33')]=0x0;_0x465c23[_0xe16c('0x34')]=0x0;if(!_0x465c23[_0xe16c('0x35')]&&!_0x465c23[_0xe16c('0x36')]){_0x465c23[_0xe16c('0x30')]+=0x1;}if(!_0x465c23[_0xe16c('0x35')]&&_0x465c23['UserId']){_0x465c23[_0xe16c('0x31')]+=0x1;if(_0x465c23[_0xe16c('0x30')]){_0x465c23[_0xe16c('0x30')]-=0x1;}}if(_0x465c23[_0xe16c('0x35')]&&_0x465c23[_0xe16c('0x36')]){_0x465c23['answered']+=0x1;if(_0x465c23['talking']){_0x465c23[_0xe16c('0x31')]-=0x1;}}if(_0x465c23[_0xe16c('0x35')]&&!_0x465c23[_0xe16c('0x36')]){_0x465c23[_0xe16c('0x33')]+=0x1;if(_0x465c23[_0xe16c('0x30')]){_0x465c23['waiting']-=0x1;}}_0x465c23[_0xe16c('0x34')]+=0x1;_0x15564e(_0x465c23);});}exports[_0xe16c('0x37')]=function(_0x34a4e6,_0x5b1782){var _0x1de71a={},_0x32d72f={},_0xb817aa={'count':0x0,'rows':[]};var _0x8ed1f5=_['map'](db[_0xe16c('0x38')][_0xe16c('0x39')],function(_0x365210){return{'name':_0x365210[_0xe16c('0x3a')],'type':_0x365210[_0xe16c('0x3b')][_0xe16c('0x3c')]};});_0x32d72f['model']=_[_0xe16c('0x22')](_0x8ed1f5,'name');_0x32d72f[_0xe16c('0x3d')]=_[_0xe16c('0x3e')](_0x34a4e6[_0xe16c('0x3d')]);_0x32d72f[_0xe16c('0x3f')]=_[_0xe16c('0x40')](_0x32d72f['model'],_0x32d72f[_0xe16c('0x3d')]);_0x1de71a[_0xe16c('0x41')]=_[_0xe16c('0x40')](_0x32d72f['model'],qs[_0xe16c('0x42')](_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x42')]));_0x1de71a[_0xe16c('0x41')]=_0x1de71a['attributes'][_0xe16c('0x43')]?_0x1de71a[_0xe16c('0x41')]:_0x32d72f[_0xe16c('0x44')];if(!_0x34a4e6[_0xe16c('0x3d')]['hasOwnProperty'](_0xe16c('0x45'))){_0x1de71a[_0xe16c('0x1a')]=qs[_0xe16c('0x1a')](_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x1a')]);_0x1de71a[_0xe16c('0x17')]=qs[_0xe16c('0x17')](_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x17')]);}_0x1de71a[_0xe16c('0x46')]=qs['sort'](_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x47')]);_0x1de71a['where']=qs['filters'](_[_0xe16c('0x48')](_0x34a4e6[_0xe16c('0x3d')],_0x32d72f[_0xe16c('0x3f')]),_0x8ed1f5);var _0x3fa5f=[];var _0x36149e=squel[_0xe16c('0x49')]()[_0xe16c('0x4a')]('id')[_0xe16c('0x4a')](_0xe16c('0x20'))[_0xe16c('0x4a')](_0xe16c('0x4b'))[_0xe16c('0x4c')](_0xe16c('0x4d'));var _0x548e7f=squel[_0xe16c('0x49')]()[_0xe16c('0x4a')](_0xe16c('0x4e'))[_0xe16c('0x4a')](_0xe16c('0x4f'))[_0xe16c('0x4a')](_0xe16c('0x50'))[_0xe16c('0x4c')](_0xe16c('0x51'),'ui')[_0xe16c('0x52')](_0xe16c('0x53'),'u','u.id\x20=\x20ui.UserId');var _0x57805c=squel['select']()[_0xe16c('0x4c')](_0xe16c('0x54'),'i')[_0xe16c('0x52')](_0xe16c('0x55'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0xe16c('0x52')]('users','o',_0xe16c('0x56'))[_0xe16c('0x52')]('mail_accounts','a','a.id\x20=\x20i.MailAccountId')['left_join']('mail_messages','me',_0xe16c('0x57'))[_0xe16c('0x52')](_0xe16c('0x58'),'it',_0xe16c('0x59'))[_0xe16c('0x52')](_0xe16c('0x4d'),'t',_0xe16c('0x5a'));var _0x5ecaa8=squel['expr']();var _0x1b92a8=[];var _0x20d46a=squel[_0xe16c('0x5b')]();var _0x2bbf98;if(_0x34a4e6[_0xe16c('0x3d')]['search']){_0x2bbf98=as['parseSearch'](_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x5c')]);var _0x1410a8=_0x2bbf98[_0xe16c('0x5d')];for(var _0x126a2f=0x0;_0x126a2f<_0x2bbf98[_0xe16c('0x5e')][_0xe16c('0x43')];_0x126a2f++){var _0x5d5134=_0x2bbf98[_0xe16c('0x5e')][_0x126a2f];var _0x2f76c0='i';var _0x23c143=_[_0xe16c('0x5f')](_0x8ed1f5,['name',_0x5d5134[_0xe16c('0x4a')]]);if(!_0x23c143){switch(_0x5d5134['field']){case _0xe16c('0x60'):if(_0x5d5134[_0xe16c('0x61')]==0x1){_0x57805c[_0xe16c('0x62')]('`'+_0x5d5134[_0xe16c('0x4a')]+_0xe16c('0x63'));}else{_0x57805c['having']('`'+_0x5d5134[_0xe16c('0x4a')]+_0xe16c('0x64'));}break;case'Contact':if(_0x5d5134[_0xe16c('0x65')]===_0xe16c('0x66')){if(_0x5d5134[_0xe16c('0x61')][_0xe16c('0x26')]('\x20')[_0xe16c('0x43')]>0x1){_0x5ecaa8[_0x1410a8](_0xe16c('0x67'),qs[_0xe16c('0x68')](_0x5d5134[_0xe16c('0x61')]),null);}else{var _0x43baa2='%'+_0x5d5134[_0xe16c('0x61')]+'%';_0x5ecaa8[_0x1410a8]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x43baa2,_0x43baa2,_0x43baa2);}}else{_0x23c143=_[_0xe16c('0x5f')](_0x8ed1f5,[_0xe16c('0x20'),_0xe16c('0x69')]);_0x5d5134[_0xe16c('0x4a')]='ContactId';_0x40f636=as['buildExpression'](_0x2f76c0,_0x23c143['type'],_0x5d5134);_0x5ecaa8[_0x1410a8](_0x40f636[_0xe16c('0x6a')],_0x40f636[_0xe16c('0x61')]['start'],_0x40f636['value'][_0xe16c('0x15')]);}break;case _0xe16c('0x6b'):var _0x1413ac=_0x5d5134[_0xe16c('0x61')][_0xe16c('0x26')](',')[_0xe16c('0x22')](function(_0x5f4b6b){return Number(_0x5f4b6b);});_0x1413ac[_0xe16c('0x27')](function(_0x1fa5a6){_0x20d46a['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x1fa5a6+',%');});_0x1b92a8=_[_0xe16c('0x6c')](_0x1b92a8,_0x1413ac);break;case _0xe16c('0x6d'):if(_0x5d5134[_0xe16c('0x65')]==='$substring'){_0x5ecaa8[_0x1410a8]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x5d5134['value']+'%',null);}else{_0x23c143=_[_0xe16c('0x5f')](_0x8ed1f5,['name','UserId']);_0x5d5134[_0xe16c('0x4a')]=_0xe16c('0x36');_0x40f636=as[_0xe16c('0x6e')](_0x2f76c0,_0x23c143[_0xe16c('0x3b')],_0x5d5134);_0x5ecaa8[_0x1410a8](_0x40f636['text'],_0x40f636[_0xe16c('0x61')]['start'],_0x40f636[_0xe16c('0x61')][_0xe16c('0x15')]);}break;case _0xe16c('0x2c'):_0x40f636=as['buildExpression']('me',null,_0x5d5134);_0x5ecaa8[_0x1410a8](_0x40f636[_0xe16c('0x6a')],_0x40f636['value'][_0xe16c('0x6f')],_0x40f636[_0xe16c('0x61')][_0xe16c('0x15')]);break;}}else{var _0x40f636=as['buildExpression'](_0x2f76c0,_0x23c143[_0xe16c('0x3b')],_0x5d5134);_0x5ecaa8[_0x1410a8](_0x40f636[_0xe16c('0x6a')],_0x40f636['value'][_0xe16c('0x6f')],_0x40f636['value'][_0xe16c('0x15')]);}}}else{var _0x18ed00=_(_0x34a4e6[_0xe16c('0x3d')])[_0xe16c('0x3e')]()['map'](function(_0x4cf852){return _[_0xe16c('0x70')](_0x8ed1f5,[_0xe16c('0x20'),_0x4cf852])?_0x4cf852:undefined;})['compact']()[_0xe16c('0x61')]();if(!_[_0xe16c('0x71')](_0x18ed00)){_0x18ed00['forEach'](function(_0x5c8c71){if(_0x5c8c71===_0xe16c('0x72')){_0x57805c[_0xe16c('0x73')]('i.MailAccountId\x20IN\x20?',[]['concat'](_0x34a4e6['query'][_0x5c8c71]));}else if(_0x5c8c71===_0xe16c('0x74')){var _0x1c07d0=JSON['parse'](_0x34a4e6[_0xe16c('0x3d')][_0x5c8c71])['$gte'];var _0x73ac76=JSON[_0xe16c('0x75')](_0x34a4e6[_0xe16c('0x3d')][_0x5c8c71])[_0xe16c('0x76')];_0x57805c[_0xe16c('0x73')](_0xe16c('0x77'),_0x1c07d0,_0x73ac76);}else{if(_0x34a4e6['query'][_0x5c8c71]===_0xe16c('0x78')){_0x57805c[_0xe16c('0x73')]('i.'+_0x5c8c71+_0xe16c('0x79'));}else{_0x57805c[_0xe16c('0x73')]('i.'+_0x5c8c71+_0xe16c('0x7a'),_0x34a4e6[_0xe16c('0x3d')][_0x5c8c71]);}}});}if(_0x34a4e6[_0xe16c('0x3d')]['read']){if(_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x7b')]==0x1){_0x57805c[_0xe16c('0x62')](_0xe16c('0x7c'));}else{_0x57805c[_0xe16c('0x62')](_0xe16c('0x7d'));}}if(_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x7e')]){_0x1b92a8=_['isArray'](_0x34a4e6['query'][_0xe16c('0x7e')])?_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x7e')]:new Array(_0x34a4e6[_0xe16c('0x3d')]['tag']);_0x1b92a8[_0xe16c('0x27')](function(_0x5c47fe){_0x20d46a['or'](_0xe16c('0x7f'),'%,'+_0x5c47fe+',%');});}if(_0x34a4e6[_0xe16c('0x3d')]['filter']){var _0x11e954=_0x34a4e6['query']['filter'][_0xe16c('0x80')]('\x5c','\x5c\x5c')[_0xe16c('0x80')](/'/g,'\x27\x27');if(qs[_0xe16c('0x81')](_0x11e954)){_0x5ecaa8['or'](_0xe16c('0x82'),_0x11e954+'%');}else if(qs[_0xe16c('0x83')](_0x11e954)){_0x5ecaa8['or'](_0xe16c('0x84'),_0x11e954+'%');}else{_0x5ecaa8['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xe16c('0x68')](_0x11e954))['or']('MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x11e954));}}}_0x57805c['where'](_0x5ecaa8);_0x57805c['group'](_0xe16c('0x85'));var _0x452876={'type':db[_0xe16c('0x86')]['QueryTypes']['SELECT'],'raw':!![]};var _0x188926=_0x57805c[_0xe16c('0x87')]();_0x188926[_0xe16c('0x4a')](_0xe16c('0x85'));_0x188926[_0xe16c('0x4a')](_0xe16c('0x88'),_0xe16c('0x60'));if(_0x1de71a[_0xe16c('0x46')]){_0x1de71a[_0xe16c('0x46')][_0xe16c('0x27')](function(_0x2e20fa){var _0x25b2e1=_0x2e20fa[0x0]==='contactName'?_0x2e20fa[0x0]:'i.'+_0x2e20fa[0x0];_0x57805c['order'](_0x25b2e1,_0x2e20fa[0x1]==='DESC'?![]:!![]);});}if(!_[_0xe16c('0x71')](_0x1b92a8)){_0x57805c[_0xe16c('0x62')](_0x20d46a);_0x188926[_0xe16c('0x73')](_0xe16c('0x89'),_0x1b92a8);}BPromise['resolve']()[_0xe16c('0x1d')](function(){if(!_0x2bbf98){if(_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x72')])return;_0x188926[_0xe16c('0x73')](_0xe16c('0x8a'));_0x57805c[_0xe16c('0x73')](_0xe16c('0x8a'));return;}if(_0x34a4e6[_0xe16c('0x8b')][_0xe16c('0x8c')]!=='agent')return;return _0x34a4e6[_0xe16c('0x8b')][_0xe16c('0x8d')]({'attributes':['id'],'raw':!![]})[_0xe16c('0x1d')](function(_0x4539b0){if(_[_0xe16c('0x71')](_0x4539b0)){_0x188926['where'](_0xe16c('0x8e'));_0x57805c[_0xe16c('0x73')](_0xe16c('0x8e'));}else{_0x188926[_0xe16c('0x73')](_0xe16c('0x8f'),_[_0xe16c('0x22')](_0x4539b0,'id'));_0x57805c[_0xe16c('0x73')]('i.MailAccountId\x20IN\x20?',_[_0xe16c('0x22')](_0x4539b0,'id'));}});})['then'](function(){if(_0x34a4e6[_0xe16c('0x8b')]['role']==='agent'&&!_0x2bbf98&&!_0x34a4e6[_0xe16c('0x3d')]['MailAccountId'])return[];return db[_0xe16c('0x90')][_0xe16c('0x3d')](_0x188926[_0xe16c('0x91')](),_0x452876);})[_0xe16c('0x1d')](function(_0x190e21){_0xb817aa[_0xe16c('0x19')]=_0x190e21[_0xe16c('0x43')];if(_0xb817aa[_0xe16c('0x19')]===0x0)return[];return db[_0xe16c('0x90')]['query'](_0x36149e[_0xe16c('0x91')](),_0x452876)[_0xe16c('0x1d')](function(_0x4c28ba){_0x3fa5f=_[_0xe16c('0x92')](_0x4c28ba,'id');_0x452876=_['merge'](_0x452876,{'model':db[_0xe16c('0x38')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x34a4e6[_0xe16c('0x3d')][_0xe16c('0x42')]){_0x1de71a[_0xe16c('0x41')]['forEach'](function(_0x5346b8){_0x57805c[_0xe16c('0x4a')]('i.'+_0x5346b8);});}else{_0x57805c[_0xe16c('0x4a')](_0xe16c('0x88'),_0xe16c('0x60'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x93'),'Account.key');_0x57805c[_0xe16c('0x4a')](_0xe16c('0x94'),_0xe16c('0x95'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x96'),_0xe16c('0x97'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x85'));_0x57805c['field'](_0xe16c('0x98'));_0x57805c[_0xe16c('0x4a')]('i.updatedAt');_0x57805c['field'](_0xe16c('0x99'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x9a'));_0x57805c['field']('i.attach');_0x57805c[_0xe16c('0x4a')](_0xe16c('0x9b'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x9c'));_0x57805c['field'](_0xe16c('0x9d'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x9e'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0x9f'));_0x57805c[_0xe16c('0x4a')]('i.thirdDisposition');_0x57805c['field'](_0xe16c('0xa0'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0xa1'));_0x57805c[_0xe16c('0x4a')]('i.ContactId');_0x57805c['field']('i.MailAccountId');_0x57805c[_0xe16c('0x4a')](_0xe16c('0xa2'));_0x57805c[_0xe16c('0x4a')]('c.firstName',_0xe16c('0xa3'));_0x57805c[_0xe16c('0x4a')]('c.lastName',_0xe16c('0xa4'));_0x57805c['field'](_0xe16c('0xa5'),_0xe16c('0xa6'));_0x57805c['field'](_0xe16c('0xa7'),_0xe16c('0xa8'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0xa9'),_0xe16c('0xaa'));_0x57805c[_0xe16c('0x4a')]('c.fax',_0xe16c('0xab'));_0x57805c['field'](_0xe16c('0xac'),_0xe16c('0xad'));_0x57805c[_0xe16c('0x4a')](_0xe16c('0xae'),_0xe16c('0xaf'));_0x57805c[_0xe16c('0x4a')]('GROUP_CONCAT(DISTINCT\x20t.id)','TagIds');}if(_0x1de71a[_0xe16c('0x1a')])_0x57805c[_0xe16c('0x1a')](_0x1de71a[_0xe16c('0x1a')]);if(_0x1de71a[_0xe16c('0x17')])_0x57805c[_0xe16c('0x17')](_0x1de71a['offset']);return db['sequelize']['query'](_0x57805c[_0xe16c('0x91')](),_0x452876);})[_0xe16c('0x1d')](function(_0x29ff4b){if(_0x29ff4b[_0xe16c('0x43')]>0x0)_0x548e7f[_0xe16c('0x73')](_0xe16c('0xb0'),_['map'](_0x29ff4b,'id'));return db['sequelize'][_0xe16c('0x3d')](_0x548e7f[_0xe16c('0x91')](),_0x452876)[_0xe16c('0x1d')](function(_0x558b53){var _0xf387c6=_[_0xe16c('0xb1')](_0x558b53,'MailInteractionId');var _0x46741c=[];return db[_0xe16c('0xb2')][_0xe16c('0x29')]({'attributes':[_0xe16c('0xb3')],'raw':!![]})[_0xe16c('0x1d')](function(_0x53da4a){var _0x46d2e3=_0x53da4a['enableEmailPreview'];_0x29ff4b[_0xe16c('0x27')](function(_0x179ade){_0x46741c['push'](updateMailInteraction(_0x179ade,_0x3fa5f,_0xf387c6,_0x46d2e3));});return BPromise['all'](_0x46741c);});});});})[_0xe16c('0x1d')](function(_0x52538f){_0xb817aa[_0xe16c('0xb4')]=_0x52538f;return _0xb817aa;})[_0xe16c('0x1d')](respondWithFilteredResult(_0x5b1782,_0x1de71a))[_0xe16c('0x2f')](handleError(_0x5b1782,null));};exports['show']=function(_0x2b4f73,_0x11e432){var _0xcb1c3={'raw':![],'where':{'id':_0x2b4f73['params']['id']}},_0x342465={};_0x342465['model']=_[_0xe16c('0x3e')](db[_0xe16c('0x38')][_0xe16c('0x39')]);_0x342465[_0xe16c('0x3d')]=_[_0xe16c('0x3e')](_0x2b4f73[_0xe16c('0x3d')]);_0x342465[_0xe16c('0x3f')]=_[_0xe16c('0x40')](_0x342465[_0xe16c('0x44')],_0x342465[_0xe16c('0x3d')]);_0xcb1c3[_0xe16c('0x41')]=_['intersection'](_0x342465[_0xe16c('0x44')],qs['fields'](_0x2b4f73['query'][_0xe16c('0x42')]));_0xcb1c3['attributes']=_0xcb1c3[_0xe16c('0x41')]['length']?_0xcb1c3[_0xe16c('0x41')]:_0x342465[_0xe16c('0x44')];if(_0x2b4f73[_0xe16c('0x3d')][_0xe16c('0xb5')]){_0xcb1c3['include']=[{'all':!![]}];}_0xcb1c3=_[_0xe16c('0xb6')]({},_0xcb1c3,_0x2b4f73[_0xe16c('0xb7')]);return db[_0xe16c('0x38')][_0xe16c('0x5f')](_0xcb1c3)['then'](handleEntityNotFound(_0x11e432,null))[_0xe16c('0x1d')](respondWithResult(_0x11e432,null))[_0xe16c('0x2f')](handleError(_0x11e432,null));};exports['create']=function(_0x1db695,_0x25ed83){return db[_0xe16c('0x38')]['create'](_0x1db695[_0xe16c('0xb8')],{})[_0xe16c('0x1d')](respondWithResult(_0x25ed83,0xc9))[_0xe16c('0x2f')](handleError(_0x25ed83,null));};exports[_0xe16c('0xb9')]=function(_0x4addfc,_0x1913fc){if(_0x4addfc[_0xe16c('0xb8')]['id']){delete _0x4addfc[_0xe16c('0xb8')]['id'];}return db['MailInteraction'][_0xe16c('0x5f')]({'where':{'id':_0x4addfc[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0x1913fc,null))['then'](saveUpdates(_0x4addfc['body'],null))[_0xe16c('0x1d')](respondWithResult(_0x1913fc,null))['catch'](handleError(_0x1913fc,null));};exports[_0xe16c('0x1c')]=function(_0x57f4e1,_0xcdb243){return db[_0xe16c('0x38')][_0xe16c('0x5f')]({'where':{'id':_0x57f4e1[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0xcdb243,null))[_0xe16c('0x1d')](removeEntity(_0xcdb243,null))[_0xe16c('0x2f')](handleError(_0xcdb243,null));};exports[_0xe16c('0xbb')]=function(_0x2a5c9d,_0x59bd26){return db['MailInteraction'][_0xe16c('0xbb')]()[_0xe16c('0x1d')](respondWithResult(_0x59bd26,null))['catch'](handleError(_0x59bd26,null));};exports[_0xe16c('0xbc')]=function(_0x163510,_0x10a20f){return db[_0xe16c('0xbd')][_0xe16c('0x5f')]({'where':{'id':_0x163510[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0x10a20f,null))[_0xe16c('0x1d')](function(_0x1bfab6){if(_0x1bfab6){return _0x1bfab6[_0xe16c('0xbc')](_0x163510[_0xe16c('0xb8')][_0xe16c('0xbe')],_[_0xe16c('0xbf')](_0x163510[_0xe16c('0xb8')],['ids','id'])||{});}})[_0xe16c('0x1d')](respondWithResult(_0x10a20f,null))[_0xe16c('0x2f')](handleError(_0x10a20f,null));};exports[_0xe16c('0xc0')]=function(_0x1c81c3,_0x2c6f01){var _0x5e3eb3={'raw':![],'where':{}};var _0x385f46={};var _0x63db24={'count':0x0,'rows':[]};return db[_0xe16c('0x38')][_0xe16c('0x29')]({'where':{'id':_0x1c81c3[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0x2c6f01,null))[_0xe16c('0x1d')](function(_0x55347f){if(_0x55347f){_0x385f46[_0xe16c('0x44')]=_[_0xe16c('0x3e')](db['MailMessage'][_0xe16c('0x39')]);_0x385f46['query']=_[_0xe16c('0x3e')](_0x1c81c3[_0xe16c('0x3d')]);_0x385f46[_0xe16c('0x3f')]=_[_0xe16c('0x40')](_0x385f46[_0xe16c('0x44')],_0x385f46[_0xe16c('0x3d')]);_0x5e3eb3['attributes']=_[_0xe16c('0x40')](_0x385f46[_0xe16c('0x44')],qs['fields'](_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0x42')]));_0x5e3eb3[_0xe16c('0x41')]=_0x5e3eb3[_0xe16c('0x41')][_0xe16c('0x43')]?_0x5e3eb3[_0xe16c('0x41')]:_0x385f46['model'];if(!_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0xc1')](_0xe16c('0x45'))){_0x5e3eb3[_0xe16c('0x1a')]=qs[_0xe16c('0x1a')](_0x1c81c3['query'][_0xe16c('0x1a')]);_0x5e3eb3['offset']=qs[_0xe16c('0x17')](_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0x17')]);}_0x5e3eb3['order']=qs['sort'](_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0x47')]);_0x5e3eb3[_0xe16c('0x73')]=qs['filters'](_[_0xe16c('0x48')](_0x1c81c3[_0xe16c('0x3d')],_0x385f46[_0xe16c('0x3f')]));_0x5e3eb3[_0xe16c('0x73')][_0xe16c('0xc2')]=_0x55347f['id'];if(_0x1c81c3['query'][_0xe16c('0xc3')]){_0x5e3eb3[_0xe16c('0x73')]=_[_0xe16c('0xb6')](_0x5e3eb3[_0xe16c('0x73')],{'$or':_[_0xe16c('0x22')](_0x5e3eb3[_0xe16c('0x41')],function(_0x4c75d4){var _0x5ae342={};_0x5ae342[_0x4c75d4]={'$like':'%'+_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0xc3')]+'%'};return _0x5ae342;})});}if(_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0xc4')]){var _0x14188b=_0x1c81c3['query'][_0xe16c('0xc4')][_0xe16c('0x26')](',');var _0x24fef1={};_0x24fef1[_0x14188b[0x0]]={'$gte':moment(_0x14188b[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x5e3eb3[_0xe16c('0x73')]=_[_0xe16c('0xb6')](_0x5e3eb3[_0xe16c('0x73')],_0x24fef1);}_0x5e3eb3=_[_0xe16c('0xb6')]({},_0x5e3eb3,_0x1c81c3[_0xe16c('0xb7')]);return db['MailMessage'][_0xe16c('0x19')]({'where':_0x5e3eb3[_0xe16c('0x73')]})[_0xe16c('0x1d')](function(_0x450514){_0x63db24['count']=_0x450514;if(_0x1c81c3[_0xe16c('0x3d')]['includeAll']){_0x5e3eb3[_0xe16c('0xc5')]=[{'all':!![]}];}return db[_0xe16c('0xbd')]['findAll'](_0x5e3eb3);})[_0xe16c('0x1d')](function(_0x205dfc){if(_0x1c81c3[_0xe16c('0x3d')][_0xe16c('0xc6')]==='true'){for(var _0x4a5ad0=0x0;_0x4a5ad0<_0x205dfc[_0xe16c('0x43')];_0x4a5ad0++){_0x205dfc[_0x4a5ad0][_0xe16c('0xb8')]=juice(_0x205dfc[_0x4a5ad0][_0xe16c('0xb8')]);}}_0x63db24[_0xe16c('0xb4')]=_0x205dfc;return _0x63db24;});}})[_0xe16c('0x1d')](respondWithFilteredResult(_0x2c6f01,_0x5e3eb3))[_0xe16c('0x2f')](handleError(_0x2c6f01,null));};exports['addTags']=function(_0x4c5a74,_0x5a683c){return db[_0xe16c('0x38')]['find']({'where':{'id':_0x4c5a74[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0x5a683c,null))[_0xe16c('0x1d')](function(_0xdca4e6){if(_0xdca4e6){return _0xdca4e6[_0xe16c('0xc7')](_0x4c5a74[_0xe16c('0xb8')][_0xe16c('0xbe')],_[_0xe16c('0xbf')](_0x4c5a74['body'],[_0xe16c('0xbe'),'id'])||{})['spread'](function(){return db[_0xe16c('0x6b')][_0xe16c('0xc8')]({'attributes':['id','name','color'],'where':{'id':_0x4c5a74['body'][_0xe16c('0xbe')]}});})[_0xe16c('0x1d')](function(_0x376282){socket[_0xe16c('0xc9')](_0xe16c('0xca'),{'id':Number(_0x4c5a74[_0xe16c('0xba')]['id']),'tags':_0x376282||[]});return{'id':Number(_0x4c5a74[_0xe16c('0xba')]['id']),'tags':_0x376282||[]};});}})[_0xe16c('0x1d')](respondWithResult(_0x5a683c,null))[_0xe16c('0x2f')](handleError(_0x5a683c,null));};exports['removeTags']=function(_0x2ac420,_0x417c2c){return db[_0xe16c('0x38')][_0xe16c('0x5f')]({'where':{'id':_0x2ac420[_0xe16c('0xba')]['id']}})[_0xe16c('0x1d')](handleEntityNotFound(_0x417c2c,null))[_0xe16c('0x1d')](function(_0x18a0f0){if(_0x18a0f0){return _0x18a0f0[_0xe16c('0xcb')](_0x2ac420['query']['ids']);}})['then'](respondWithStatusCode(_0x417c2c,null))[_0xe16c('0x2f')](handleError(_0x417c2c,null));};exports[_0xe16c('0xcc')]=function(_0x3df4ba,_0x2deb5b){var _0x27dc2e=moment()[_0xe16c('0xcd')]()[_0xe16c('0x91')]();var _0x4dd45b=path[_0xe16c('0xce')](config[_0xe16c('0xcf')],'server',_0xe16c('0xd0'),_0xe16c('0xd1'));var _0x2700bd=path[_0xe16c('0xce')](config['root'],_0xe16c('0xd2'),'files',_0xe16c('0xd3'));var _0x24fd1b=path['join'](_0x4dd45b,_0x27dc2e);var _0x5966f6=util['format'](_0xe16c('0xd4'),_0x3df4ba[_0xe16c('0xba')]['id'],_0x27dc2e);var _0x573ff3=path[_0xe16c('0xce')](_0x4dd45b,_0x5966f6);var _0x23a95e=[];if(_0x3df4ba[_0xe16c('0x3d')]['attachments']){_0x23a95e[_0xe16c('0x28')]({'model':db['Attachment'],'as':'Attachments','raw':!![]});}var _0x10fdeb=[{'model':db['MailMessage'],'as':_0xe16c('0xd5'),'attributes':['id',_0xe16c('0xb8'),_0xe16c('0x4c'),'to','cc',_0xe16c('0xd6'),_0xe16c('0xd7'),_0xe16c('0x74')],'where':{'secret':![]},'order':qs[_0xe16c('0x47')]('id'),'include':_0x23a95e}];return db[_0xe16c('0x38')][_0xe16c('0x5f')]({'where':{'id':_0x3df4ba[_0xe16c('0xba')]['id']},'include':_0x10fdeb})[_0xe16c('0x1d')](handleEntityNotFound(_0x2deb5b,null))[_0xe16c('0x1d')](function(_0xf2868b){if(_0xf2868b&&_0xf2868b[_0xe16c('0xd5')]){var _0x11a00c=_0xf2868b[_0xe16c('0xd8')]({'plain':!![]});fs[_0xe16c('0xd9')](_0x24fd1b);return BPromise[_0xe16c('0xda')](_0x11a00c[_0xe16c('0xd5')],function(_0xb9088c,_0x8a03ec){var _0x2c1a30={'from':_0xb9088c['from'],'to':_0xb9088c['to'],'subject':_0xb9088c[_0xe16c('0xd7')],'html':htmlEntities[_0xe16c('0xdb')](_0xb9088c['body']),'headers':{'Date':moment(_0xb9088c['createdAt'])[_0xe16c('0xdc')](_0xe16c('0xdd'))},'attachments':[]};if(_0xb9088c['cc']){_0x2c1a30[_0xe16c('0xde')]['Cc']=_0xb9088c['cc'];}if(_0xb9088c['bcc']){_0x2c1a30[_0xe16c('0xde')][_0xe16c('0xdf')]=_0xb9088c[_0xe16c('0xd6')];}return new BPromise(function(_0x48102f,_0xe671c5){if(_0xb9088c['Attachments']){for(var _0x1250ed=0x0;_0x1250ed<_0xb9088c['Attachments']['length'];_0x1250ed++){var _0x224b39=_0xb9088c[_0xe16c('0xe0')][_0x1250ed];var _0x1a729d=path[_0xe16c('0xce')](_0x2700bd,_0x224b39['basename']);if(fs[_0xe16c('0xe1')](_0x1a729d)){_0x2c1a30['attachments']['push']({'name':_0x224b39[_0xe16c('0x20')],'contentType':_0x224b39[_0xe16c('0x3b')],'data':fs['readFileSync'](_0x1a729d)});}}}emlformat[_0xe16c('0xe2')](_0x2c1a30,function(_0x1eaf60,_0x405751){if(_0x1eaf60)return _0xe671c5(_0x1eaf60);fs[_0xe16c('0xe3')](path[_0xe16c('0xce')](_0x24fd1b,util[_0xe16c('0xdc')](_0xe16c('0xe4'),_0x8a03ec)),_0x405751);return _0x48102f(_0x405751);});});})['then'](function(){return new BPromise(function(_0x2f9b84,_0x272ef6){zipdir(_0x24fd1b,{'saveTo':_0x573ff3},function(_0x2bdb08,_0x3603ca){if(_0x2bdb08)return _0x272ef6(_0x2bdb08);return _0x2f9b84(_0x3603ca);});})['then'](function(){return new BPromise(function(_0x3d6fe1,_0x2adb7f){rimraf(_0x24fd1b,function(_0x45d9ec){if(_0x45d9ec)_0x2adb7f(_0x45d9ec);return _0x3d6fe1();});});})[_0xe16c('0x1d')](function(){return _0x2deb5b['download'](_0x573ff3,_0x5966f6,function(_0x42439c){if(!_0x42439c)fs['unlinkSync'](_0x573ff3);});});});}else{return _0x2deb5b[_0xe16c('0x13')](0xc8);}})[_0xe16c('0x2f')](handleError(_0x2deb5b,null));};
\ No newline at end of file
+var _0x3007=['map','MailInteraction','fieldName','type','key','getOptions','findAll','mail','query','user','show','params','model','keys','filters','intersection','attributes','fields','includeAll','include','merge','options','find','catch','create','body','describe','addMessage','MailMessage','ids','getMessages','rawAttributes','length','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','inlineCss','rows','addTags','setTags','omit','spread','Tag','color','emit','mailInteractionTags:save','removeTags','download','unix','toString','join','server','files','root','attachments','transcript-%d-%s.zip','Attachments','Messages','from','bcc','subject','createdAt','each','missing.recipient@your.company.com','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','push','readFileSync','writeFileSync','message%d.eml','eml-format','zip-dir','bluebird','util','path','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','end','json','offset','undefined','count','limit','status','Content-Range','then','destroy','sendStatus','error','stack','name','index'];(function(_0x49bba8,_0x3a9f40){var _0x5dca5d=function(_0x526539){while(--_0x526539){_0x49bba8['push'](_0x49bba8['shift']());}};_0x5dca5d(++_0x3a9f40);}(_0x3007,0xc0));var _0x7300=function(_0x4898f0,_0x49fb26){_0x4898f0=_0x4898f0-0x0;var _0x58b576=_0x3007[_0x4898f0];return _0x58b576;};'use strict';var emlformat=require(_0x7300('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x7300('0x1'));var moment=require('moment');var BPromise=require(_0x7300('0x2'));var util=require(_0x7300('0x3'));var path=require(_0x7300('0x4'));var fs=require('fs');var _=require(_0x7300('0x5'));var juice=require(_0x7300('0x6'));var Redis=require(_0x7300('0x7'));var interaction=require('../../components/interaction/service');var qs=require(_0x7300('0x8'));var logger=require(_0x7300('0x9'))(_0x7300('0xa'));var config=require(_0x7300('0xb'));var db=require(_0x7300('0xc'))['db'];var htmlEntities=require(_0x7300('0xd'));config[_0x7300('0xe')]=_[_0x7300('0xf')](config[_0x7300('0xe')],{'host':_0x7300('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x7300('0xe')]));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x245430,_0x1092c9){_0x1092c9=_0x1092c9||0xcc;return function(_0x23bdc5){if(_0x23bdc5){return _0x245430['sendStatus'](_0x1092c9);}return _0x245430['status'](_0x1092c9)[_0x7300('0x11')]();};}function respondWithResult(_0x42afd3,_0x29d8c3){_0x29d8c3=_0x29d8c3||0xc8;return function(_0x51570f){if(_0x51570f){return _0x42afd3['status'](_0x29d8c3)[_0x7300('0x12')](_0x51570f);}};}function respondWithFilteredResult(_0x5e3bbe,_0x3c0c0b){return function(_0x146055){if(_0x146055){var _0x3457f8=typeof _0x3c0c0b[_0x7300('0x13')]===_0x7300('0x14')&&typeof _0x3c0c0b['limit']===_0x7300('0x14');var _0x4c7c4f=_0x146055[_0x7300('0x15')];var _0x2993d5=_0x3457f8?0x0:_0x3c0c0b['offset'];var _0x951503=_0x3457f8?_0x146055[_0x7300('0x15')]:_0x3c0c0b[_0x7300('0x13')]+_0x3c0c0b[_0x7300('0x16')];var _0x43c6b7;if(_0x951503>=_0x4c7c4f){_0x951503=_0x4c7c4f;_0x43c6b7=0xc8;}else{_0x43c6b7=0xce;}_0x5e3bbe[_0x7300('0x17')](_0x43c6b7);return _0x5e3bbe['set'](_0x7300('0x18'),_0x2993d5+'-'+_0x951503+'/'+_0x4c7c4f)[_0x7300('0x12')](_0x146055);}return null;};}function saveUpdates(_0x31719a){return function(_0xff3be0){if(_0xff3be0){return _0xff3be0['update'](_0x31719a)[_0x7300('0x19')](function(_0x47a767){return _0x47a767;});}return null;};}function removeEntity(_0x460283){return function(_0x2a8b41){if(_0x2a8b41){return _0x2a8b41[_0x7300('0x1a')]()['then'](function(){_0x460283[_0x7300('0x17')](0xcc)[_0x7300('0x11')]();});}};}function handleEntityNotFound(_0x5565f4){return function(_0x510d79){if(!_0x510d79){_0x5565f4[_0x7300('0x1b')](0x194);}return _0x510d79;};}function handleError(_0x3a0f8c,_0x3dbafd){_0x3dbafd=_0x3dbafd||0x1f4;return function(_0x165ecb){logger[_0x7300('0x1c')](_0x165ecb[_0x7300('0x1d')]);if(_0x165ecb[_0x7300('0x1e')]){delete _0x165ecb['name'];}_0x3a0f8c[_0x7300('0x17')](_0x3dbafd)['send'](_0x165ecb);};}exports[_0x7300('0x1f')]=function(_0x131842,_0x1716c2){var _0x202dde={};var _0x527369=_[_0x7300('0x20')](db[_0x7300('0x21')]['rawAttributes'],function(_0x356f2a){return{'name':_0x356f2a[_0x7300('0x22')],'type':_0x356f2a[_0x7300('0x23')][_0x7300('0x24')]};});_0x202dde=qs[_0x7300('0x25')](_0x527369,_0x131842);return interaction[_0x7300('0x26')](_0x7300('0x27'),_0x131842[_0x7300('0x28')],_0x131842[_0x7300('0x29')],_0x202dde,_0x527369)[_0x7300('0x19')](respondWithFilteredResult(_0x1716c2,_0x202dde))['catch'](handleError(_0x1716c2,null));};exports[_0x7300('0x2a')]=function(_0x2ae0c1,_0x379a00){var _0x50f520={'raw':![],'where':{'id':_0x2ae0c1[_0x7300('0x2b')]['id']}},_0x4eec17={};_0x4eec17[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x21')]['rawAttributes']);_0x4eec17['query']=_[_0x7300('0x2d')](_0x2ae0c1[_0x7300('0x28')]);_0x4eec17[_0x7300('0x2e')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],_0x4eec17[_0x7300('0x28')]);_0x50f520[_0x7300('0x30')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],qs['fields'](_0x2ae0c1['query'][_0x7300('0x31')]));_0x50f520[_0x7300('0x30')]=_0x50f520['attributes']['length']?_0x50f520[_0x7300('0x30')]:_0x4eec17[_0x7300('0x2c')];if(_0x2ae0c1['query'][_0x7300('0x32')]){_0x50f520[_0x7300('0x33')]=[{'all':!![]}];}_0x50f520=_[_0x7300('0x34')]({},_0x50f520,_0x2ae0c1[_0x7300('0x35')]);return db[_0x7300('0x21')][_0x7300('0x36')](_0x50f520)[_0x7300('0x19')](handleEntityNotFound(_0x379a00,null))[_0x7300('0x19')](respondWithResult(_0x379a00,null))[_0x7300('0x37')](handleError(_0x379a00,null));};exports[_0x7300('0x38')]=function(_0xad3793,_0x4ead96){return db['MailInteraction'][_0x7300('0x38')](_0xad3793[_0x7300('0x39')],{})[_0x7300('0x19')](respondWithResult(_0x4ead96,0xc9))['catch'](handleError(_0x4ead96,null));};exports['update']=function(_0x378352,_0x287fef){if(_0x378352[_0x7300('0x39')]['id']){delete _0x378352[_0x7300('0x39')]['id'];}return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x378352[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x287fef,null))[_0x7300('0x19')](saveUpdates(_0x378352[_0x7300('0x39')],null))[_0x7300('0x19')](respondWithResult(_0x287fef,null))[_0x7300('0x37')](handleError(_0x287fef,null));};exports[_0x7300('0x1a')]=function(_0x235606,_0x5814c7){return db['MailInteraction']['find']({'where':{'id':_0x235606[_0x7300('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5814c7,null))[_0x7300('0x19')](removeEntity(_0x5814c7,null))['catch'](handleError(_0x5814c7,null));};exports[_0x7300('0x3a')]=function(_0x239733,_0x41cab6){return db['MailInteraction'][_0x7300('0x3a')]()[_0x7300('0x19')](respondWithResult(_0x41cab6,null))[_0x7300('0x37')](handleError(_0x41cab6,null));};exports[_0x7300('0x3b')]=function(_0x40a978,_0x4dca77){return db[_0x7300('0x3c')]['find']({'where':{'id':_0x40a978['params']['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x4dca77,null))[_0x7300('0x19')](function(_0x49d29c){if(_0x49d29c){return _0x49d29c['addMessage'](_0x40a978[_0x7300('0x39')][_0x7300('0x3d')],_['omit'](_0x40a978[_0x7300('0x39')],['ids','id'])||{});}})[_0x7300('0x19')](respondWithResult(_0x4dca77,null))[_0x7300('0x37')](handleError(_0x4dca77,null));};exports[_0x7300('0x3e')]=function(_0x13978a,_0x2cdce8){var _0x9c86ae={'raw':![],'where':{}};var _0x3caa05={};var _0x2ee94a={'count':0x0,'rows':[]};return db['MailInteraction']['findOne']({'where':{'id':_0x13978a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x2cdce8,null))[_0x7300('0x19')](function(_0x1838ac){if(_0x1838ac){_0x3caa05[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x3c')][_0x7300('0x3f')]);_0x3caa05[_0x7300('0x28')]=_[_0x7300('0x2d')](_0x13978a[_0x7300('0x28')]);_0x3caa05['filters']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],_0x3caa05[_0x7300('0x28')]);_0x9c86ae['attributes']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],qs[_0x7300('0x31')](_0x13978a[_0x7300('0x28')][_0x7300('0x31')]));_0x9c86ae[_0x7300('0x30')]=_0x9c86ae[_0x7300('0x30')][_0x7300('0x40')]?_0x9c86ae[_0x7300('0x30')]:_0x3caa05[_0x7300('0x2c')];if(!_0x13978a[_0x7300('0x28')]['hasOwnProperty'](_0x7300('0x41'))){_0x9c86ae[_0x7300('0x16')]=qs['limit'](_0x13978a[_0x7300('0x28')][_0x7300('0x16')]);_0x9c86ae[_0x7300('0x13')]=qs[_0x7300('0x13')](_0x13978a[_0x7300('0x28')][_0x7300('0x13')]);}_0x9c86ae[_0x7300('0x42')]=qs['sort'](_0x13978a[_0x7300('0x28')][_0x7300('0x43')]);_0x9c86ae[_0x7300('0x44')]=qs[_0x7300('0x2e')](_[_0x7300('0x45')](_0x13978a[_0x7300('0x28')],_0x3caa05[_0x7300('0x2e')]));_0x9c86ae[_0x7300('0x44')][_0x7300('0x46')]=_0x1838ac['id'];if(_0x13978a[_0x7300('0x28')][_0x7300('0x47')]){_0x9c86ae[_0x7300('0x44')]=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],{'$or':_[_0x7300('0x20')](_0x9c86ae[_0x7300('0x30')],function(_0x53dad7){var _0x4ea656={};_0x4ea656[_0x53dad7]={'$like':'%'+_0x13978a['query'][_0x7300('0x47')]+'%'};return _0x4ea656;})});}if(_0x13978a[_0x7300('0x28')][_0x7300('0x48')]){var _0x3fdac6=_0x13978a[_0x7300('0x28')][_0x7300('0x48')][_0x7300('0x49')](',');var _0x2c1043={};_0x2c1043[_0x3fdac6[0x0]]={'$gte':moment(_0x3fdac6[0x1])[_0x7300('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')};_0x9c86ae['where']=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],_0x2c1043);}_0x9c86ae=_['merge']({},_0x9c86ae,_0x13978a[_0x7300('0x35')]);return db[_0x7300('0x3c')][_0x7300('0x15')]({'where':_0x9c86ae[_0x7300('0x44')]})[_0x7300('0x19')](function(_0x49e8d2){_0x2ee94a[_0x7300('0x15')]=_0x49e8d2;if(_0x13978a[_0x7300('0x28')][_0x7300('0x32')]){_0x9c86ae[_0x7300('0x33')]=[{'all':!![]}];}return db[_0x7300('0x3c')][_0x7300('0x26')](_0x9c86ae);})[_0x7300('0x19')](function(_0x2314fc){if(_0x13978a['query'][_0x7300('0x4b')]==='true'){for(var _0x46234c=0x0;_0x46234c<_0x2314fc[_0x7300('0x40')];_0x46234c++){_0x2314fc[_0x46234c][_0x7300('0x39')]=juice(_0x2314fc[_0x46234c][_0x7300('0x39')]);}}_0x2ee94a[_0x7300('0x4c')]=_0x2314fc;return _0x2ee94a;});}})[_0x7300('0x19')](respondWithFilteredResult(_0x2cdce8,_0x9c86ae))[_0x7300('0x37')](handleError(_0x2cdce8,null));};exports[_0x7300('0x4d')]=function(_0x52a9f6,_0x32914a){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x52a9f6[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x32914a,null))[_0x7300('0x19')](function(_0x2faad5){if(_0x2faad5){return _0x2faad5[_0x7300('0x4e')](_0x52a9f6[_0x7300('0x39')]['ids'],_[_0x7300('0x4f')](_0x52a9f6[_0x7300('0x39')],[_0x7300('0x3d'),'id'])||{})[_0x7300('0x50')](function(){return db[_0x7300('0x51')]['findAll']({'attributes':['id',_0x7300('0x1e'),_0x7300('0x52')],'where':{'id':_0x52a9f6[_0x7300('0x39')][_0x7300('0x3d')]}});})[_0x7300('0x19')](function(_0x1f31e6){socket[_0x7300('0x53')](_0x7300('0x54'),{'id':Number(_0x52a9f6['params']['id']),'tags':_0x1f31e6||[]});return{'id':Number(_0x52a9f6[_0x7300('0x2b')]['id']),'tags':_0x1f31e6||[]};});}})[_0x7300('0x19')](respondWithResult(_0x32914a,null))[_0x7300('0x37')](handleError(_0x32914a,null));};exports[_0x7300('0x55')]=function(_0x28475a,_0x5729c9){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x28475a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x5729c9,null))[_0x7300('0x19')](function(_0x18d6f1){if(_0x18d6f1){return _0x18d6f1['removeTags'](_0x28475a[_0x7300('0x28')][_0x7300('0x3d')]);}})[_0x7300('0x19')](respondWithStatusCode(_0x5729c9,null))[_0x7300('0x37')](handleError(_0x5729c9,null));};exports[_0x7300('0x56')]=function(_0x447422,_0xb4bb32){var _0x5609b8=moment()[_0x7300('0x57')]()[_0x7300('0x58')]();var _0x2a8be9=path[_0x7300('0x59')](config['root'],_0x7300('0x5a'),_0x7300('0x5b'),'tmp');var _0x204196=path[_0x7300('0x59')](config[_0x7300('0x5c')],_0x7300('0x5a'),_0x7300('0x5b'),_0x7300('0x5d'));var _0x4caac4=path[_0x7300('0x59')](_0x2a8be9,_0x5609b8);var _0x57f708=util[_0x7300('0x4a')](_0x7300('0x5e'),_0x447422['params']['id'],_0x5609b8);var _0x2c9689=path[_0x7300('0x59')](_0x2a8be9,_0x57f708);var _0x358aee=[];if(_0x447422[_0x7300('0x28')][_0x7300('0x5d')]){_0x358aee['push']({'model':db['Attachment'],'as':_0x7300('0x5f'),'raw':!![]});}var _0x2ab44d=[{'model':db['MailMessage'],'as':_0x7300('0x60'),'attributes':['id','body',_0x7300('0x61'),'to','cc',_0x7300('0x62'),_0x7300('0x63'),_0x7300('0x64')],'where':{'secret':![]},'order':qs[_0x7300('0x43')]('id'),'include':_0x358aee}];return db[_0x7300('0x21')]['find']({'where':{'id':_0x447422[_0x7300('0x2b')]['id']},'include':_0x2ab44d})[_0x7300('0x19')](handleEntityNotFound(_0xb4bb32,null))[_0x7300('0x19')](function(_0x3c9d37){if(_0x3c9d37&&_0x3c9d37['Messages']){var _0xf74aec=_0x3c9d37['get']({'plain':!![]});fs['mkdirSync'](_0x4caac4);return BPromise[_0x7300('0x65')](_0xf74aec[_0x7300('0x60')],function(_0x24e6b4,_0x572b93){var _0x586fe2={'from':_0x24e6b4['from'],'to':_0x24e6b4['to']||_0x7300('0x66'),'subject':_0x24e6b4[_0x7300('0x63')],'html':htmlEntities[_0x7300('0x67')](_0x24e6b4['body']),'headers':{'Date':moment(_0x24e6b4[_0x7300('0x64')])[_0x7300('0x4a')](_0x7300('0x68'))},'attachments':[]};if(_0x24e6b4['cc']){_0x586fe2[_0x7300('0x69')]['Cc']=_0x24e6b4['cc'];}if(_0x24e6b4[_0x7300('0x62')]){_0x586fe2[_0x7300('0x69')]['Bcc']=_0x24e6b4[_0x7300('0x62')];}return new BPromise(function(_0x9feedf,_0x1701e5){if(_0x24e6b4[_0x7300('0x5f')]){for(var _0x29e5c1=0x0;_0x29e5c1<_0x24e6b4['Attachments']['length'];_0x29e5c1++){var _0x3043fd=_0x24e6b4[_0x7300('0x5f')][_0x29e5c1];var _0x1dadce=path[_0x7300('0x59')](_0x204196,_0x3043fd[_0x7300('0x6a')]);if(fs[_0x7300('0x6b')](_0x1dadce)){_0x586fe2['attachments'][_0x7300('0x6c')]({'name':_0x3043fd[_0x7300('0x1e')],'contentType':_0x3043fd['type'],'data':fs[_0x7300('0x6d')](_0x1dadce)});}}}emlformat['build'](_0x586fe2,function(_0x18712b,_0x3384ad){if(_0x18712b)return _0x1701e5(_0x18712b);fs[_0x7300('0x6e')](path[_0x7300('0x59')](_0x4caac4,util[_0x7300('0x4a')](_0x7300('0x6f'),_0x572b93)),_0x3384ad);return _0x9feedf(_0x3384ad);});});})[_0x7300('0x19')](function(){return new BPromise(function(_0x4d4bef,_0x5a7037){zipdir(_0x4caac4,{'saveTo':_0x2c9689},function(_0x39e988,_0x2a9fcb){if(_0x39e988)return _0x5a7037(_0x39e988);return _0x4d4bef(_0x2a9fcb);});})['then'](function(){return new BPromise(function(_0x51d74c,_0x3c2f86){rimraf(_0x4caac4,function(_0x54d1de){if(_0x54d1de)_0x3c2f86(_0x54d1de);return _0x51d74c();});});})[_0x7300('0x19')](function(){return _0xb4bb32[_0x7300('0x56')](_0x2c9689,_0x57f708,function(_0x1edfbc){if(!_0x1edfbc)fs['unlinkSync'](_0x2c9689);});});});}else{return _0xb4bb32['sendStatus'](0xc8);}})['catch'](handleError(_0xb4bb32,null));};
\ No newline at end of file