Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index f09cf83..baa8fd3 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 _0xe9b9=['../../mysqldb','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','status','json','undefined','count','offset','limit','set','Content-Range','update','then','destroy','end','sendStatus','error','stack','name','send','index','rawAttributes','fieldName','key','getOptions','findAll','mail','user','catch','params','model','keys','MailInteraction','query','filters','intersection','attributes','fields','length','include','find','create','body','describe','addMessage','ids','omit','getMessages','findOne','MailMessage','hasOwnProperty','nolimit','order','sort','where','MailInteractionId','filter','merge','$gte','split','YYYY-MM-DD\x20HH:mm:ss','options','includeAll','inlineCss','true','rows','addTags','spread','Tag','emit','removeTags','unix','toString','join','root','files','tmp','server','attachments','push','Attachment','Attachments','subject','createdAt','Messages','get','each','format','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','bcc','Bcc','basename','existsSync','writeFileSync','message%d.eml','download','unlinkSync','eml-format','rimraf','zip-dir','moment','bluebird','util','path','juice','../../components/parsers/qs','../../config/logger'];(function(_0x5d2af3,_0x5f0ed4){var _0x2bc29e=function(_0x357474){while(--_0x357474){_0x5d2af3['push'](_0x5d2af3['shift']());}};_0x2bc29e(++_0x5f0ed4);}(_0xe9b9,0xd4));var _0x9e9b=function(_0x13d0be,_0x4ec269){_0x13d0be=_0x13d0be-0x0;var _0x23035d=_0xe9b9[_0x13d0be];return _0x23035d;};'use strict';var emlformat=require(_0x9e9b('0x0'));var rimraf=require(_0x9e9b('0x1'));var zipdir=require(_0x9e9b('0x2'));var moment=require(_0x9e9b('0x3'));var BPromise=require(_0x9e9b('0x4'));var util=require(_0x9e9b('0x5'));var path=require(_0x9e9b('0x6'));var fs=require('fs');var _=require('lodash');var juice=require(_0x9e9b('0x7'));var Redis=require('ioredis');var interaction=require('../../components/interaction/service');var qs=require(_0x9e9b('0x8'));var logger=require(_0x9e9b('0x9'))('api');var config=require('../../config/environment');var db=require(_0x9e9b('0xa'))['db'];var htmlEntities=require('html-entities');config[_0x9e9b('0xb')]=_[_0x9e9b('0xc')](config['redis'],{'host':_0x9e9b('0xd'),'port':0x18eb});var socket=require(_0x9e9b('0xe'))(new Redis(config[_0x9e9b('0xb')]));require(_0x9e9b('0xf'))['register'](socket);function respondWithStatusCode(_0x54e13f,_0x46fa6e){_0x46fa6e=_0x46fa6e||0xcc;return function(_0x437bc1){if(_0x437bc1){return _0x54e13f['sendStatus'](_0x46fa6e);}return _0x54e13f[_0x9e9b('0x10')](_0x46fa6e)['end']();};}function respondWithResult(_0x357259,_0x5d7faa){_0x5d7faa=_0x5d7faa||0xc8;return function(_0x5a43ba){if(_0x5a43ba){return _0x357259[_0x9e9b('0x10')](_0x5d7faa)[_0x9e9b('0x11')](_0x5a43ba);}};}function respondWithFilteredResult(_0x20df67,_0x79b14c){return function(_0x28f91b){if(_0x28f91b){var _0x3b5b11=typeof _0x79b14c['offset']===_0x9e9b('0x12')&&typeof _0x79b14c['limit']==='undefined';var _0x3b4273=_0x28f91b[_0x9e9b('0x13')];var _0x429b61=_0x3b5b11?0x0:_0x79b14c[_0x9e9b('0x14')];var _0x3a0f10=_0x3b5b11?_0x28f91b[_0x9e9b('0x13')]:_0x79b14c[_0x9e9b('0x14')]+_0x79b14c[_0x9e9b('0x15')];var _0x35b933;if(_0x3a0f10>=_0x3b4273){_0x3a0f10=_0x3b4273;_0x35b933=0xc8;}else{_0x35b933=0xce;}_0x20df67[_0x9e9b('0x10')](_0x35b933);return _0x20df67[_0x9e9b('0x16')](_0x9e9b('0x17'),_0x429b61+'-'+_0x3a0f10+'/'+_0x3b4273)['json'](_0x28f91b);}return null;};}function saveUpdates(_0xaaebc1){return function(_0x5a0f38){if(_0x5a0f38){return _0x5a0f38[_0x9e9b('0x18')](_0xaaebc1)[_0x9e9b('0x19')](function(_0x7d58a){return _0x7d58a;});}return null;};}function removeEntity(_0x11ea58){return function(_0x5b27b9){if(_0x5b27b9){return _0x5b27b9[_0x9e9b('0x1a')]()['then'](function(){_0x11ea58[_0x9e9b('0x10')](0xcc)[_0x9e9b('0x1b')]();});}};}function handleEntityNotFound(_0x3f09ca){return function(_0x2c77cd){if(!_0x2c77cd){_0x3f09ca[_0x9e9b('0x1c')](0x194);}return _0x2c77cd;};}function handleError(_0x39704c,_0x56be5f){_0x56be5f=_0x56be5f||0x1f4;return function(_0xc7b149){logger[_0x9e9b('0x1d')](_0xc7b149[_0x9e9b('0x1e')]);if(_0xc7b149[_0x9e9b('0x1f')]){delete _0xc7b149[_0x9e9b('0x1f')];}_0x39704c['status'](_0x56be5f)[_0x9e9b('0x20')](_0xc7b149);};}exports[_0x9e9b('0x21')]=function(_0x553969,_0x2f3356){var _0x40fabc={};var _0x124633=_['map'](db['MailInteraction'][_0x9e9b('0x22')],function(_0x52e4e9){return{'name':_0x52e4e9[_0x9e9b('0x23')],'type':_0x52e4e9['type'][_0x9e9b('0x24')]};});_0x40fabc=qs[_0x9e9b('0x25')](_0x124633,_0x553969);return interaction[_0x9e9b('0x26')](_0x9e9b('0x27'),_0x553969['query'],_0x553969[_0x9e9b('0x28')],_0x40fabc,_0x124633)[_0x9e9b('0x19')](respondWithFilteredResult(_0x2f3356,_0x40fabc))[_0x9e9b('0x29')](handleError(_0x2f3356,null));};exports['show']=function(_0x4f5efc,_0x4b0556){var _0x115e9e={'raw':![],'where':{'id':_0x4f5efc[_0x9e9b('0x2a')]['id']}},_0x2c4f6f={};_0x2c4f6f[_0x9e9b('0x2b')]=_[_0x9e9b('0x2c')](db[_0x9e9b('0x2d')][_0x9e9b('0x22')]);_0x2c4f6f[_0x9e9b('0x2e')]=_[_0x9e9b('0x2c')](_0x4f5efc['query']);_0x2c4f6f[_0x9e9b('0x2f')]=_[_0x9e9b('0x30')](_0x2c4f6f[_0x9e9b('0x2b')],_0x2c4f6f[_0x9e9b('0x2e')]);_0x115e9e[_0x9e9b('0x31')]=_[_0x9e9b('0x30')](_0x2c4f6f['model'],qs[_0x9e9b('0x32')](_0x4f5efc[_0x9e9b('0x2e')][_0x9e9b('0x32')]));_0x115e9e['attributes']=_0x115e9e[_0x9e9b('0x31')][_0x9e9b('0x33')]?_0x115e9e[_0x9e9b('0x31')]:_0x2c4f6f['model'];if(_0x4f5efc['query']['includeAll']){_0x115e9e[_0x9e9b('0x34')]=[{'all':!![]}];}_0x115e9e=_['merge']({},_0x115e9e,_0x4f5efc['options']);return db['MailInteraction'][_0x9e9b('0x35')](_0x115e9e)[_0x9e9b('0x19')](handleEntityNotFound(_0x4b0556,null))[_0x9e9b('0x19')](respondWithResult(_0x4b0556,null))[_0x9e9b('0x29')](handleError(_0x4b0556,null));};exports[_0x9e9b('0x36')]=function(_0x4bdfa4,_0x727c66){return db[_0x9e9b('0x2d')][_0x9e9b('0x36')](_0x4bdfa4[_0x9e9b('0x37')],{})[_0x9e9b('0x19')](respondWithResult(_0x727c66,0xc9))['catch'](handleError(_0x727c66,null));};exports['update']=function(_0x597e74,_0x2b50cf){if(_0x597e74['body']['id']){delete _0x597e74[_0x9e9b('0x37')]['id'];}return db[_0x9e9b('0x2d')]['find']({'where':{'id':_0x597e74['params']['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0x2b50cf,null))['then'](saveUpdates(_0x597e74[_0x9e9b('0x37')],null))[_0x9e9b('0x19')](respondWithResult(_0x2b50cf,null))[_0x9e9b('0x29')](handleError(_0x2b50cf,null));};exports[_0x9e9b('0x1a')]=function(_0xfb98eb,_0xa8ffd0){return db[_0x9e9b('0x2d')][_0x9e9b('0x35')]({'where':{'id':_0xfb98eb[_0x9e9b('0x2a')]['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0xa8ffd0,null))[_0x9e9b('0x19')](removeEntity(_0xa8ffd0,null))[_0x9e9b('0x29')](handleError(_0xa8ffd0,null));};exports[_0x9e9b('0x38')]=function(_0x56539a,_0x8f1b4d){return db[_0x9e9b('0x2d')][_0x9e9b('0x38')]()[_0x9e9b('0x19')](respondWithResult(_0x8f1b4d,null))[_0x9e9b('0x29')](handleError(_0x8f1b4d,null));};exports[_0x9e9b('0x39')]=function(_0x68235e,_0x2d03b5){return db['MailMessage'][_0x9e9b('0x35')]({'where':{'id':_0x68235e[_0x9e9b('0x2a')]['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0x2d03b5,null))['then'](function(_0x519af6){if(_0x519af6){return _0x519af6['addMessage'](_0x68235e[_0x9e9b('0x37')][_0x9e9b('0x3a')],_[_0x9e9b('0x3b')](_0x68235e[_0x9e9b('0x37')],[_0x9e9b('0x3a'),'id'])||{});}})[_0x9e9b('0x19')](respondWithResult(_0x2d03b5,null))[_0x9e9b('0x29')](handleError(_0x2d03b5,null));};exports[_0x9e9b('0x3c')]=function(_0x2e8fdf,_0x8b4b17){var _0xb13916={'raw':![],'where':{}};var _0x5ace90={};var _0x42d1b7={'count':0x0,'rows':[]};return db['MailInteraction'][_0x9e9b('0x3d')]({'where':{'id':_0x2e8fdf[_0x9e9b('0x2a')]['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0x8b4b17,null))[_0x9e9b('0x19')](function(_0x4c1f40){if(_0x4c1f40){_0x5ace90[_0x9e9b('0x2b')]=_[_0x9e9b('0x2c')](db[_0x9e9b('0x3e')]['rawAttributes']);_0x5ace90[_0x9e9b('0x2e')]=_[_0x9e9b('0x2c')](_0x2e8fdf[_0x9e9b('0x2e')]);_0x5ace90['filters']=_[_0x9e9b('0x30')](_0x5ace90[_0x9e9b('0x2b')],_0x5ace90[_0x9e9b('0x2e')]);_0xb13916[_0x9e9b('0x31')]=_[_0x9e9b('0x30')](_0x5ace90['model'],qs[_0x9e9b('0x32')](_0x2e8fdf['query'][_0x9e9b('0x32')]));_0xb13916[_0x9e9b('0x31')]=_0xb13916['attributes'][_0x9e9b('0x33')]?_0xb13916[_0x9e9b('0x31')]:_0x5ace90[_0x9e9b('0x2b')];if(!_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x3f')](_0x9e9b('0x40'))){_0xb13916[_0x9e9b('0x15')]=qs[_0x9e9b('0x15')](_0x2e8fdf[_0x9e9b('0x2e')]['limit']);_0xb13916[_0x9e9b('0x14')]=qs[_0x9e9b('0x14')](_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x14')]);}_0xb13916[_0x9e9b('0x41')]=qs[_0x9e9b('0x42')](_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x42')]);_0xb13916['where']=qs['filters'](_['pick'](_0x2e8fdf[_0x9e9b('0x2e')],_0x5ace90[_0x9e9b('0x2f')]));_0xb13916[_0x9e9b('0x43')][_0x9e9b('0x44')]=_0x4c1f40['id'];if(_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x45')]){_0xb13916[_0x9e9b('0x43')]=_[_0x9e9b('0x46')](_0xb13916[_0x9e9b('0x43')],{'$or':_['map'](_0xb13916[_0x9e9b('0x31')],function(_0x52566b){var _0x1fcc2b={};_0x1fcc2b[_0x52566b]={'$like':'%'+_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x45')]+'%'};return _0x1fcc2b;})});}if(_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x47')]){var _0x5894c1=_0x2e8fdf['query']['$gte'][_0x9e9b('0x48')](',');var _0x4063f1={};_0x4063f1[_0x5894c1[0x0]]={'$gte':moment(_0x5894c1[0x1])['format'](_0x9e9b('0x49'))};_0xb13916[_0x9e9b('0x43')]=_[_0x9e9b('0x46')](_0xb13916[_0x9e9b('0x43')],_0x4063f1);}_0xb13916=_[_0x9e9b('0x46')]({},_0xb13916,_0x2e8fdf[_0x9e9b('0x4a')]);return db['MailMessage'][_0x9e9b('0x13')]({'where':_0xb13916[_0x9e9b('0x43')]})[_0x9e9b('0x19')](function(_0x291db3){_0x42d1b7[_0x9e9b('0x13')]=_0x291db3;if(_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x4b')]){_0xb13916[_0x9e9b('0x34')]=[{'all':!![]}];}return db[_0x9e9b('0x3e')][_0x9e9b('0x26')](_0xb13916);})[_0x9e9b('0x19')](function(_0xb29cf6){if(_0x2e8fdf[_0x9e9b('0x2e')][_0x9e9b('0x4c')]===_0x9e9b('0x4d')){for(var _0x578320=0x0;_0x578320<_0xb29cf6[_0x9e9b('0x33')];_0x578320++){_0xb29cf6[_0x578320][_0x9e9b('0x37')]=juice(_0xb29cf6[_0x578320][_0x9e9b('0x37')]);}}_0x42d1b7[_0x9e9b('0x4e')]=_0xb29cf6;return _0x42d1b7;});}})[_0x9e9b('0x19')](respondWithFilteredResult(_0x8b4b17,_0xb13916))['catch'](handleError(_0x8b4b17,null));};exports[_0x9e9b('0x4f')]=function(_0x20aab5,_0xe58f5c){return db[_0x9e9b('0x2d')]['find']({'where':{'id':_0x20aab5[_0x9e9b('0x2a')]['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0xe58f5c,null))['then'](function(_0x165f81){if(_0x165f81){return _0x165f81['setTags'](_0x20aab5[_0x9e9b('0x37')][_0x9e9b('0x3a')],_[_0x9e9b('0x3b')](_0x20aab5[_0x9e9b('0x37')],[_0x9e9b('0x3a'),'id'])||{})[_0x9e9b('0x50')](function(){return db[_0x9e9b('0x51')][_0x9e9b('0x26')]({'attributes':['id',_0x9e9b('0x1f'),'color'],'where':{'id':_0x20aab5[_0x9e9b('0x37')][_0x9e9b('0x3a')]}});})[_0x9e9b('0x19')](function(_0xe318f){socket[_0x9e9b('0x52')]('mailInteractionTags:save',{'id':Number(_0x20aab5[_0x9e9b('0x2a')]['id']),'tags':_0xe318f||[]});return{'id':Number(_0x20aab5[_0x9e9b('0x2a')]['id']),'tags':_0xe318f||[]};});}})['then'](respondWithResult(_0xe58f5c,null))['catch'](handleError(_0xe58f5c,null));};exports[_0x9e9b('0x53')]=function(_0x25fac8,_0x4cb23c){return db[_0x9e9b('0x2d')][_0x9e9b('0x35')]({'where':{'id':_0x25fac8['params']['id']}})[_0x9e9b('0x19')](handleEntityNotFound(_0x4cb23c,null))[_0x9e9b('0x19')](function(_0x1fa32b){if(_0x1fa32b){return _0x1fa32b[_0x9e9b('0x53')](_0x25fac8[_0x9e9b('0x2e')]['ids']);}})[_0x9e9b('0x19')](respondWithStatusCode(_0x4cb23c,null))['catch'](handleError(_0x4cb23c,null));};exports['download']=function(_0x3f4f92,_0x17ff59){var _0x12bdf6=moment()[_0x9e9b('0x54')]()[_0x9e9b('0x55')]();var _0x34047d=path[_0x9e9b('0x56')](config[_0x9e9b('0x57')],'server',_0x9e9b('0x58'),_0x9e9b('0x59'));var _0x541ff6=path[_0x9e9b('0x56')](config[_0x9e9b('0x57')],_0x9e9b('0x5a'),_0x9e9b('0x58'),_0x9e9b('0x5b'));var _0x40a464=path['join'](_0x34047d,_0x12bdf6);var _0x304f61=util['format']('transcript-%d-%s.zip',_0x3f4f92['params']['id'],_0x12bdf6);var _0x1d7a72=path[_0x9e9b('0x56')](_0x34047d,_0x304f61);var _0x23c591=[];if(_0x3f4f92[_0x9e9b('0x2e')][_0x9e9b('0x5b')]){_0x23c591[_0x9e9b('0x5c')]({'model':db[_0x9e9b('0x5d')],'as':_0x9e9b('0x5e'),'raw':!![]});}var _0x39b05c=[{'model':db[_0x9e9b('0x3e')],'as':'Messages','attributes':['id',_0x9e9b('0x37'),'from','to','cc','bcc',_0x9e9b('0x5f'),_0x9e9b('0x60')],'where':{'secret':![]},'order':qs[_0x9e9b('0x42')]('id'),'include':_0x23c591}];return db[_0x9e9b('0x2d')][_0x9e9b('0x35')]({'where':{'id':_0x3f4f92[_0x9e9b('0x2a')]['id']},'include':_0x39b05c})['then'](handleEntityNotFound(_0x17ff59,null))['then'](function(_0xefa082){if(_0xefa082&&_0xefa082[_0x9e9b('0x61')]){var _0x293779=_0xefa082[_0x9e9b('0x62')]({'plain':!![]});fs['mkdirSync'](_0x40a464);return BPromise[_0x9e9b('0x63')](_0x293779[_0x9e9b('0x61')],function(_0x47a4a9,_0x5100e9){var _0x971366={'from':_0x47a4a9['from'],'to':_0x47a4a9['to'],'subject':_0x47a4a9['subject'],'html':htmlEntities['decode'](_0x47a4a9[_0x9e9b('0x37')]),'headers':{'Date':moment(_0x47a4a9[_0x9e9b('0x60')])[_0x9e9b('0x64')](_0x9e9b('0x65'))},'attachments':[]};if(_0x47a4a9['cc']){_0x971366[_0x9e9b('0x66')]['Cc']=_0x47a4a9['cc'];}if(_0x47a4a9[_0x9e9b('0x67')]){_0x971366[_0x9e9b('0x66')][_0x9e9b('0x68')]=_0x47a4a9[_0x9e9b('0x67')];}return new BPromise(function(_0x452e56,_0x31b203){if(_0x47a4a9[_0x9e9b('0x5e')]){for(var _0x30acbe=0x0;_0x30acbe<_0x47a4a9[_0x9e9b('0x5e')]['length'];_0x30acbe++){var _0x16e815=_0x47a4a9[_0x9e9b('0x5e')][_0x30acbe];var _0x423d78=path[_0x9e9b('0x56')](_0x541ff6,_0x16e815[_0x9e9b('0x69')]);if(fs[_0x9e9b('0x6a')](_0x423d78)){_0x971366[_0x9e9b('0x5b')][_0x9e9b('0x5c')]({'name':_0x16e815[_0x9e9b('0x1f')],'contentType':_0x16e815['type'],'data':fs['readFileSync'](_0x423d78)});}}}emlformat['build'](_0x971366,function(_0x4cdc34,_0x197aa4){if(_0x4cdc34)return _0x31b203(_0x4cdc34);fs[_0x9e9b('0x6b')](path[_0x9e9b('0x56')](_0x40a464,util['format'](_0x9e9b('0x6c'),_0x5100e9)),_0x197aa4);return _0x452e56(_0x197aa4);});});})[_0x9e9b('0x19')](function(){return new BPromise(function(_0x5cc2a2,_0x365a3c){zipdir(_0x40a464,{'saveTo':_0x1d7a72},function(_0x37bacd,_0x2708a1){if(_0x37bacd)return _0x365a3c(_0x37bacd);return _0x5cc2a2(_0x2708a1);});})['then'](function(){return new BPromise(function(_0x540c42,_0x4922d8){rimraf(_0x40a464,function(_0x467e9c){if(_0x467e9c)_0x4922d8(_0x467e9c);return _0x540c42();});});})[_0x9e9b('0x19')](function(){return _0x17ff59[_0x9e9b('0x6d')](_0x1d7a72,_0x304f61,function(_0x32d111){if(!_0x32d111)fs[_0x9e9b('0x6e')](_0x1d7a72);});});});}else{return _0x17ff59[_0x9e9b('0x1c')](0xc8);}})[_0x9e9b('0x29')](handleError(_0x17ff59,null));};
\ No newline at end of file