Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 553b5ea..d5a4154 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa899=['tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','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)','getFullTextValue','group','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','DESC','t.id\x20IN\x20?','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getMailAccounts','i.MailAccountId\x20IS\x20NULL','sequelize','toString','count','keyBy','merge','fields','a.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.closed','i.closedAt','i.attach','i.lastMsgDirection','i.subject','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','Contact.firstName','Contact.lastName','c.email','Contact.email','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','MailInteractionId','findOne','enableEmailPreview','show','params','MailInteraction','options','create','body','describe','addMessage','ids','omit','getMessages','hasOwnProperty','sort','pick','format','YYYY-MM-DD\x20HH:mm:ss','MailMessage','findAll','inlineCss','true','rows','addTags','setTags','spread','mailInteractionTags:save','removeTags','download','join','root','files','attachments','Attachment','Attachments','Messages','bcc','createdAt','get','each','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','bluebird','util','path','lodash','squel','juice','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../mysqldb','defaults','redis','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','undefined','limit','offset','Content-Range','then','destroy','end','error','stack','Users','map','TagIds','Tags','split','push','out','-id','lastMsgText','plainBody','catch','waiting','talking','answered','unmanaged','total','closed','UserId','index','rawAttributes','fieldName','type','query','keys','filters','intersection','model','attributes','length','nolimit','where','select','field','name','color','from','tools_tags','u.id','u.fullname','user_has_mail_interactions','left_join','users','u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','o.id\x20=\x20i.UserId','mail_accounts','a.id\x20=\x20i.MailAccountId','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','t.id\x20=\x20it.TagId','expr','unreadMessages','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','Tag','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','text','start','compact','isEmpty','forEach','MailAccountId','i.MailAccountId\x20IN\x20?','concat','parse','$gte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200'];(function(_0x54b0f3,_0x1fe2f7){var _0x5ae957=function(_0x2749eb){while(--_0x2749eb){_0x54b0f3['push'](_0x54b0f3['shift']());}};_0x5ae957(++_0x1fe2f7);}(_0xa899,0x155));var _0x9a89=function(_0x187718,_0x427383){_0x187718=_0x187718-0x0;var _0x29ddf4=_0xa899[_0x187718];return _0x29ddf4;};'use strict';var emlformat=require(_0x9a89('0x0'));var rimraf=require(_0x9a89('0x1'));var zipdir=require(_0x9a89('0x2'));var moment=require('moment');var BPromise=require(_0x9a89('0x3'));var util=require(_0x9a89('0x4'));var path=require(_0x9a89('0x5'));var fs=require('fs');var _=require(_0x9a89('0x6'));var squel=require(_0x9a89('0x7'));var juice=require(_0x9a89('0x8'));var Redis=require(_0x9a89('0x9'));var qs=require(_0x9a89('0xa'));var as=require(_0x9a89('0xb'));var logger=require(_0x9a89('0xc'))(_0x9a89('0xd'));var config=require(_0x9a89('0xe'));var db=require(_0x9a89('0xf'))['db'];var htmlEntities=require('html-entities');config['redis']=_[_0x9a89('0x10')](config[_0x9a89('0x11')],{'host':'localhost','port':0x18eb});var socket=require(_0x9a89('0x12'))(new Redis(config['redis']));require(_0x9a89('0x13'))[_0x9a89('0x14')](socket);function respondWithStatusCode(_0x401680,_0x2e90c2){_0x2e90c2=_0x2e90c2||0xcc;return function(_0x18467c){if(_0x18467c){return _0x401680[_0x9a89('0x15')](_0x2e90c2);}return _0x401680[_0x9a89('0x16')](_0x2e90c2)['end']();};}function respondWithResult(_0x51eb91,_0x4342c8){_0x4342c8=_0x4342c8||0xc8;return function(_0x8b7403){if(_0x8b7403){return _0x51eb91[_0x9a89('0x16')](_0x4342c8)['json'](_0x8b7403);}};}function respondWithFilteredResult(_0x5e4c98,_0x53acb4){return function(_0x1c66a3){if(_0x1c66a3){var _0xf08a5a=typeof _0x53acb4['offset']===_0x9a89('0x17')&&typeof _0x53acb4[_0x9a89('0x18')]===_0x9a89('0x17');var _0x203ee9=_0x1c66a3['count'];var _0x11a933=_0xf08a5a?0x0:_0x53acb4[_0x9a89('0x19')];var _0x5adef3=_0xf08a5a?_0x1c66a3['count']:_0x53acb4[_0x9a89('0x19')]+_0x53acb4['limit'];var _0xba2eaa;if(_0x5adef3>=_0x203ee9){_0x5adef3=_0x203ee9;_0xba2eaa=0xc8;}else{_0xba2eaa=0xce;}_0x5e4c98[_0x9a89('0x16')](_0xba2eaa);return _0x5e4c98['set'](_0x9a89('0x1a'),_0x11a933+'-'+_0x5adef3+'/'+_0x203ee9)['json'](_0x1c66a3);}return null;};}function saveUpdates(_0x2d648f){return function(_0x3d54ed){if(_0x3d54ed){return _0x3d54ed['update'](_0x2d648f)[_0x9a89('0x1b')](function(_0x3759cb){return _0x3759cb;});}return null;};}function removeEntity(_0xf60649){return function(_0x1619e0){if(_0x1619e0){return _0x1619e0[_0x9a89('0x1c')]()[_0x9a89('0x1b')](function(){_0xf60649[_0x9a89('0x16')](0xcc)[_0x9a89('0x1d')]();});}};}function handleEntityNotFound(_0x583227){return function(_0x51618d){if(!_0x51618d){_0x583227[_0x9a89('0x15')](0x194);}return _0x51618d;};}function handleError(_0x330121,_0xea8910){_0xea8910=_0xea8910||0x1f4;return function(_0x2e83aa){logger[_0x9a89('0x1e')](_0x2e83aa[_0x9a89('0x1f')]);if(_0x2e83aa['name']){delete _0x2e83aa['name'];}_0x330121[_0x9a89('0x16')](_0xea8910)['send'](_0x2e83aa);};}function getInteractionUsers(_0x3f5723,_0x2cca01){return new BPromise(function(_0xd8bad3,_0x3b1807){try{if(_0x2cca01[_0x3f5723['id']]){_0x3f5723[_0x9a89('0x20')]=_[_0x9a89('0x21')](_0x2cca01[_0x3f5723['id']],function(_0x3ab9e5){return{'id':_0x3ab9e5['id'],'fullname':_0x3ab9e5['fullname']};});}}catch(_0x1a5005){_0x3b1807(_0x1a5005);}_0xd8bad3(_0x3f5723);});}function getInteractionTags(_0x5002a2,_0xd64312){return new BPromise(function(_0x5a888b,_0x5817e4){try{if(_0x5002a2[_0x9a89('0x22')]){_0x5002a2[_0x9a89('0x23')]=[];_0x5002a2['TagIds'][_0x9a89('0x24')](',')['forEach'](function(_0x27f442){_0x5002a2[_0x9a89('0x23')][_0x9a89('0x25')](_0xd64312[_0x27f442]);});}delete _0x5002a2[_0x9a89('0x22')];}catch(_0x2324c0){_0x5817e4(_0x2324c0);}_0x5a888b(_0x5002a2);});}function getLastMessageText(_0x90b975){return new BPromise(function(_0x1da14a,_0x5e5751){return db['MailMessage']['findOne']({'where':{'$and':[{'MailInteractionId':_0x90b975['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0x9a89('0x26')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':['plainBody'],'order':_0x9a89('0x27'),'raw':!![]})[_0x9a89('0x1b')](function(_0x264c44){if(_0x264c44&&_0x264c44['plainBody']){_0x90b975[_0x9a89('0x28')]=_['trimStart'](_0x264c44[_0x9a89('0x29')]);}_0x1da14a(_0x90b975);})[_0x9a89('0x2a')](function(_0x48a9aa){_0x5e5751(_0x48a9aa);});});}function updateMailInteraction(_0x35fcc5,_0xe5921,_0x49ffe5,_0x5ae0e9){return new BPromise(function(_0x163055,_0x124490){return getInteractionUsers(_0x35fcc5,_0x49ffe5)[_0x9a89('0x1b')](function(_0x356ac8){return getInteractionTags(_0x356ac8,_0xe5921);})[_0x9a89('0x1b')](function(_0x1a7325){return getStateInteraction(_0x1a7325);})[_0x9a89('0x1b')](function(_0x330f2c){if(_0x5ae0e9){_0x163055(getLastMessageText(_0x330f2c));}else{_0x163055(_0x330f2c);}})['catch'](function(_0x409b5e){_0x124490(_0x409b5e);});});}function getStateInteraction(_0x1b36db){return new BPromise(function(_0x265177){_0x1b36db[_0x9a89('0x2b')]=0x0;_0x1b36db[_0x9a89('0x2c')]=0x0;_0x1b36db[_0x9a89('0x2d')]=0x0;_0x1b36db[_0x9a89('0x2e')]=0x0;_0x1b36db[_0x9a89('0x2f')]=0x0;if(!_0x1b36db[_0x9a89('0x30')]&&!_0x1b36db[_0x9a89('0x31')]){_0x1b36db['waiting']+=0x1;}if(!_0x1b36db[_0x9a89('0x30')]&&_0x1b36db[_0x9a89('0x31')]){_0x1b36db[_0x9a89('0x2c')]+=0x1;if(_0x1b36db[_0x9a89('0x2b')]){_0x1b36db[_0x9a89('0x2b')]-=0x1;}}if(_0x1b36db[_0x9a89('0x30')]&&_0x1b36db[_0x9a89('0x31')]){_0x1b36db[_0x9a89('0x2d')]+=0x1;if(_0x1b36db[_0x9a89('0x2c')]){_0x1b36db[_0x9a89('0x2c')]-=0x1;}}if(_0x1b36db[_0x9a89('0x30')]&&!_0x1b36db[_0x9a89('0x31')]){_0x1b36db['unmanaged']+=0x1;if(_0x1b36db[_0x9a89('0x2b')]){_0x1b36db['waiting']-=0x1;}}_0x1b36db[_0x9a89('0x2f')]+=0x1;_0x265177(_0x1b36db);});}exports[_0x9a89('0x32')]=function(_0x26112d,_0x2f88e9){var _0x158981={},_0x2d4b6f={},_0x474fad={'count':0x0,'rows':[]};var _0x337429=_[_0x9a89('0x21')](db['MailInteraction'][_0x9a89('0x33')],function(_0xb656cb){return{'name':_0xb656cb[_0x9a89('0x34')],'type':_0xb656cb[_0x9a89('0x35')]['key']};});_0x2d4b6f['model']=_[_0x9a89('0x21')](_0x337429,'name');_0x2d4b6f[_0x9a89('0x36')]=_[_0x9a89('0x37')](_0x26112d[_0x9a89('0x36')]);_0x2d4b6f[_0x9a89('0x38')]=_[_0x9a89('0x39')](_0x2d4b6f[_0x9a89('0x3a')],_0x2d4b6f[_0x9a89('0x36')]);_0x158981[_0x9a89('0x3b')]=_['intersection'](_0x2d4b6f['model'],qs['fields'](_0x26112d[_0x9a89('0x36')]['fields']));_0x158981['attributes']=_0x158981[_0x9a89('0x3b')][_0x9a89('0x3c')]?_0x158981[_0x9a89('0x3b')]:_0x2d4b6f['model'];if(!_0x26112d[_0x9a89('0x36')]['hasOwnProperty'](_0x9a89('0x3d'))){_0x158981['limit']=qs[_0x9a89('0x18')](_0x26112d[_0x9a89('0x36')][_0x9a89('0x18')]);_0x158981['offset']=qs[_0x9a89('0x19')](_0x26112d[_0x9a89('0x36')][_0x9a89('0x19')]);}_0x158981['order']=qs['sort'](_0x26112d[_0x9a89('0x36')]['sort']);_0x158981[_0x9a89('0x3e')]=qs[_0x9a89('0x38')](_['pick'](_0x26112d[_0x9a89('0x36')],_0x2d4b6f[_0x9a89('0x38')]),_0x337429);var _0x4ae6c9=[];var _0x4b4636=squel[_0x9a89('0x3f')]()[_0x9a89('0x40')]('id')['field'](_0x9a89('0x41'))['field'](_0x9a89('0x42'))[_0x9a89('0x43')](_0x9a89('0x44'));var _0x38cddb=squel[_0x9a89('0x3f')]()['field'](_0x9a89('0x45'))['field'](_0x9a89('0x46'))[_0x9a89('0x40')]('ui.MailInteractionId')[_0x9a89('0x43')](_0x9a89('0x47'),'ui')[_0x9a89('0x48')](_0x9a89('0x49'),'u',_0x9a89('0x4a'));var _0x14b44e=squel[_0x9a89('0x3f')]()[_0x9a89('0x43')](_0x9a89('0x4b'),'i')[_0x9a89('0x48')](_0x9a89('0x4c'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x9a89('0x48')](_0x9a89('0x49'),'o',_0x9a89('0x4d'))['left_join'](_0x9a89('0x4e'),'a',_0x9a89('0x4f'))['left_join']('mail_messages','me',_0x9a89('0x50'))[_0x9a89('0x48')](_0x9a89('0x51'),'it','it.MailInteractionId\x20=\x20i.id')[_0x9a89('0x48')](_0x9a89('0x44'),'t',_0x9a89('0x52'));var _0x4f1f1b=squel[_0x9a89('0x53')]();var _0x5e6b95=[];var _0x283960=squel['expr']();var _0x5cc567;if(_0x26112d[_0x9a89('0x36')]['search']){_0x5cc567=as['parseSearch'](_0x26112d['query']['search']);var _0x5bf1bf=_0x5cc567['sqlOperator'];for(var _0x348925=0x0;_0x348925<_0x5cc567['conditions'][_0x9a89('0x3c')];_0x348925++){var _0x197685=_0x5cc567['conditions'][_0x348925];var _0x2e78cf='i';var _0x5c7215=_['find'](_0x337429,[_0x9a89('0x41'),_0x197685[_0x9a89('0x40')]]);if(!_0x5c7215){switch(_0x197685[_0x9a89('0x40')]){case _0x9a89('0x54'):if(_0x197685['value']==0x1){_0x14b44e[_0x9a89('0x55')]('`'+_0x197685['field']+_0x9a89('0x56'));}else{_0x14b44e[_0x9a89('0x55')]('`'+_0x197685[_0x9a89('0x40')]+_0x9a89('0x57'));}break;case _0x9a89('0x58'):if(_0x197685[_0x9a89('0x59')]===_0x9a89('0x5a')){if(_0x197685[_0x9a89('0x5b')][_0x9a89('0x24')]('\x20')[_0x9a89('0x3c')]>0x1){_0x4f1f1b[_0x5bf1bf](_0x9a89('0x5c'),qs['getFullTextValue'](_0x197685[_0x9a89('0x5b')]),null);}else{var _0x14f003='%'+_0x197685[_0x9a89('0x5b')]+'%';_0x4f1f1b[_0x5bf1bf](_0x9a89('0x5d'),_0x14f003,_0x14f003,_0x14f003);}}else{_0x5c7215=_[_0x9a89('0x5e')](_0x337429,['name','ContactId']);_0x197685[_0x9a89('0x40')]=_0x9a89('0x5f');_0x42b771=as[_0x9a89('0x60')](_0x2e78cf,_0x5c7215['type'],_0x197685);_0x4f1f1b[_0x5bf1bf](_0x42b771['text'],_0x42b771['value']['start'],_0x42b771['value'][_0x9a89('0x1d')]);}break;case _0x9a89('0x61'):var _0x16ee90=_0x197685['value']['split'](',')[_0x9a89('0x21')](function(_0x4ecaa4){return Number(_0x4ecaa4);});_0x16ee90['forEach'](function(_0xed2f1f){_0x283960['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0xed2f1f+',%');});_0x5e6b95=_[_0x9a89('0x62')](_0x5e6b95,_0x16ee90);break;case _0x9a89('0x63'):if(_0x197685['operator']===_0x9a89('0x5a')){_0x4f1f1b[_0x5bf1bf](_0x9a89('0x64'),'%'+_0x197685['value']+'%',null);}else{_0x5c7215=_[_0x9a89('0x5e')](_0x337429,[_0x9a89('0x41'),_0x9a89('0x31')]);_0x197685['field']=_0x9a89('0x31');_0x42b771=as[_0x9a89('0x60')](_0x2e78cf,_0x5c7215['type'],_0x197685);_0x4f1f1b[_0x5bf1bf](_0x42b771[_0x9a89('0x65')],_0x42b771[_0x9a89('0x5b')][_0x9a89('0x66')],_0x42b771['value'][_0x9a89('0x1d')]);}break;case _0x9a89('0x29'):_0x42b771=as[_0x9a89('0x60')]('me',null,_0x197685);_0x4f1f1b[_0x5bf1bf](_0x42b771[_0x9a89('0x65')],_0x42b771['value'][_0x9a89('0x66')],_0x42b771['value'][_0x9a89('0x1d')]);break;}}else{var _0x42b771=as[_0x9a89('0x60')](_0x2e78cf,_0x5c7215[_0x9a89('0x35')],_0x197685);_0x4f1f1b[_0x5bf1bf](_0x42b771[_0x9a89('0x65')],_0x42b771[_0x9a89('0x5b')][_0x9a89('0x66')],_0x42b771[_0x9a89('0x5b')]['end']);}}}else{var _0x5bad90=_(_0x26112d[_0x9a89('0x36')])['keys']()[_0x9a89('0x21')](function(_0x674a9e){return _['some'](_0x337429,['name',_0x674a9e])?_0x674a9e:undefined;})[_0x9a89('0x67')]()[_0x9a89('0x5b')]();if(!_[_0x9a89('0x68')](_0x5bad90)){_0x5bad90[_0x9a89('0x69')](function(_0x2b0efd){if(_0x2b0efd===_0x9a89('0x6a')){_0x14b44e[_0x9a89('0x3e')](_0x9a89('0x6b'),[][_0x9a89('0x6c')](_0x26112d[_0x9a89('0x36')][_0x2b0efd]));}else if(_0x2b0efd==='createdAt'){var _0x333365=JSON[_0x9a89('0x6d')](_0x26112d['query'][_0x2b0efd])[_0x9a89('0x6e')];var _0x5ddfdb=JSON['parse'](_0x26112d[_0x9a89('0x36')][_0x2b0efd])['$lte'];_0x14b44e[_0x9a89('0x3e')](_0x9a89('0x6f'),_0x333365,_0x5ddfdb);}else{if(_0x26112d[_0x9a89('0x36')][_0x2b0efd]===_0x9a89('0x70')){_0x14b44e[_0x9a89('0x3e')]('i.'+_0x2b0efd+'\x20IS\x20NULL');}else{_0x14b44e['where']('i.'+_0x2b0efd+_0x9a89('0x71'),_0x26112d['query'][_0x2b0efd]);}}});}if(_0x26112d[_0x9a89('0x36')][_0x9a89('0x72')]){if(_0x26112d[_0x9a89('0x36')]['read']==0x1){_0x14b44e[_0x9a89('0x55')](_0x9a89('0x73'));}else{_0x14b44e[_0x9a89('0x55')](_0x9a89('0x74'));}}if(_0x26112d['query'][_0x9a89('0x75')]){_0x5e6b95=_[_0x9a89('0x76')](_0x26112d[_0x9a89('0x36')][_0x9a89('0x75')])?_0x26112d['query'][_0x9a89('0x75')]:new Array(_0x26112d[_0x9a89('0x36')][_0x9a89('0x75')]);_0x5e6b95[_0x9a89('0x69')](function(_0xad008c){_0x283960['or'](_0x9a89('0x77'),'%,'+_0xad008c+',%');});}if(_0x26112d['query'][_0x9a89('0x78')]){var _0x12c6b5=_0x26112d['query'][_0x9a89('0x78')][_0x9a89('0x79')]('\x5c','\x5c\x5c')[_0x9a89('0x79')](/'/g,'\x27\x27');if(qs[_0x9a89('0x7a')](_0x12c6b5)){_0x4f1f1b['or'](_0x9a89('0x7b'),_0x12c6b5+'%');}else if(qs[_0x9a89('0x7c')](_0x12c6b5)){_0x4f1f1b['or'](_0x9a89('0x7d'),_0x12c6b5+'%');}else{_0x4f1f1b['or'](_0x9a89('0x7e'),qs['getFullTextValue'](_0x12c6b5))['or'](_0x9a89('0x7f'),qs[_0x9a89('0x80')](_0x12c6b5));}}}_0x14b44e[_0x9a89('0x3e')](_0x4f1f1b);_0x14b44e[_0x9a89('0x81')](_0x9a89('0x82'));var _0x1a679d={'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]};var _0x4e6691=_0x14b44e['clone']();_0x4e6691[_0x9a89('0x40')](_0x9a89('0x82'));_0x4e6691[_0x9a89('0x40')](_0x9a89('0x83'),_0x9a89('0x54'));if(_0x158981[_0x9a89('0x84')]){_0x158981[_0x9a89('0x84')]['forEach'](function(_0x2fdf08){var _0x16255f=_0x2fdf08[0x0]==='contactName'?_0x2fdf08[0x0]:'i.'+_0x2fdf08[0x0];_0x14b44e['order'](_0x16255f,_0x2fdf08[0x1]===_0x9a89('0x85')?![]:!![]);});}if(!_[_0x9a89('0x68')](_0x5e6b95)){_0x14b44e[_0x9a89('0x55')](_0x283960);_0x4e6691[_0x9a89('0x3e')](_0x9a89('0x86'),_0x5e6b95);}BPromise[_0x9a89('0x87')]()[_0x9a89('0x1b')](function(){if(!_0x5cc567){if(_0x26112d[_0x9a89('0x36')]['MailAccountId'])return;_0x4e6691['where']('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x14b44e[_0x9a89('0x3e')](_0x9a89('0x88'));return;}if(_0x26112d[_0x9a89('0x89')][_0x9a89('0x8a')]!==_0x9a89('0x8b'))return;return _0x26112d[_0x9a89('0x89')][_0x9a89('0x8c')]({'attributes':['id'],'raw':!![]})[_0x9a89('0x1b')](function(_0x5e6a0c){if(_[_0x9a89('0x68')](_0x5e6a0c)){_0x4e6691[_0x9a89('0x3e')](_0x9a89('0x8d'));_0x14b44e['where'](_0x9a89('0x8d'));}else{_0x4e6691[_0x9a89('0x3e')](_0x9a89('0x6b'),_[_0x9a89('0x21')](_0x5e6a0c,'id'));_0x14b44e['where'](_0x9a89('0x6b'),_['map'](_0x5e6a0c,'id'));}});})['then'](function(){if(_0x26112d['user'][_0x9a89('0x8a')]===_0x9a89('0x8b')&&!_0x5cc567&&!_0x26112d['query']['MailAccountId'])return[];return db[_0x9a89('0x8e')][_0x9a89('0x36')](_0x4e6691[_0x9a89('0x8f')](),_0x1a679d);})[_0x9a89('0x1b')](function(_0x23a24e){_0x474fad[_0x9a89('0x90')]=_0x23a24e[_0x9a89('0x3c')];if(_0x474fad['count']===0x0)return[];return db[_0x9a89('0x8e')]['query'](_0x4b4636[_0x9a89('0x8f')](),_0x1a679d)[_0x9a89('0x1b')](function(_0x3b15c3){_0x4ae6c9=_[_0x9a89('0x91')](_0x3b15c3,'id');_0x1a679d=_[_0x9a89('0x92')](_0x1a679d,{'model':db['MailInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x26112d[_0x9a89('0x36')][_0x9a89('0x93')]){_0x158981['attributes'][_0x9a89('0x69')](function(_0xb14bab){_0x14b44e[_0x9a89('0x40')]('i.'+_0xb14bab);});}else{_0x14b44e['field'](_0x9a89('0x83'),_0x9a89('0x54'));_0x14b44e['field'](_0x9a89('0x94'),'Account.key');_0x14b44e[_0x9a89('0x40')](_0x9a89('0x95'),_0x9a89('0x96'));_0x14b44e[_0x9a89('0x40')]('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');_0x14b44e[_0x9a89('0x40')](_0x9a89('0x82'));_0x14b44e['field']('i.createdAt');_0x14b44e[_0x9a89('0x40')]('i.updatedAt');_0x14b44e[_0x9a89('0x40')](_0x9a89('0x97'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0x98'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0x99'));_0x14b44e['field']('i.lastMsgAt');_0x14b44e[_0x9a89('0x40')](_0x9a89('0x9a'));_0x14b44e['field'](_0x9a89('0x9b'));_0x14b44e[_0x9a89('0x40')]('i.disposition');_0x14b44e['field']('i.secondDisposition');_0x14b44e[_0x9a89('0x40')]('i.thirdDisposition');_0x14b44e['field'](_0x9a89('0x9c'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0x9d'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0x9e'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0x9f'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0xa0'));_0x14b44e[_0x9a89('0x40')]('c.firstName',_0x9a89('0xa1'));_0x14b44e[_0x9a89('0x40')]('c.lastName',_0x9a89('0xa2'));_0x14b44e['field'](_0x9a89('0xa3'),_0x9a89('0xa4'));_0x14b44e[_0x9a89('0x40')]('c.phone',_0x9a89('0xa5'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0xa6'),_0x9a89('0xa7'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0xa8'),_0x9a89('0xa9'));_0x14b44e['field'](_0x9a89('0xaa'),_0x9a89('0xab'));_0x14b44e[_0x9a89('0x40')](_0x9a89('0xac'),_0x9a89('0xad'));_0x14b44e['field'](_0x9a89('0xae'),_0x9a89('0x22'));}if(_0x158981['limit'])_0x14b44e[_0x9a89('0x18')](_0x158981[_0x9a89('0x18')]);if(_0x158981[_0x9a89('0x19')])_0x14b44e[_0x9a89('0x19')](_0x158981[_0x9a89('0x19')]);return db['sequelize'][_0x9a89('0x36')](_0x14b44e['toString'](),_0x1a679d);})['then'](function(_0x2942f7){if(_0x2942f7[_0x9a89('0x3c')]>0x0)_0x38cddb[_0x9a89('0x3e')]('ui.MailInteractionId\x20IN\x20?',_['map'](_0x2942f7,'id'));return db[_0x9a89('0x8e')]['query'](_0x38cddb[_0x9a89('0x8f')](),_0x1a679d)[_0x9a89('0x1b')](function(_0x53fbb9){var _0x70af2b=_[_0x9a89('0xaf')](_0x53fbb9,_0x9a89('0xb0'));var _0x33a6c9=[];return db['Setting'][_0x9a89('0xb1')]({'attributes':[_0x9a89('0xb2')],'raw':!![]})['then'](function(_0x38ebf2){var _0x1b6a97=_0x38ebf2[_0x9a89('0xb2')];_0x2942f7[_0x9a89('0x69')](function(_0x59ab18){_0x33a6c9[_0x9a89('0x25')](updateMailInteraction(_0x59ab18,_0x4ae6c9,_0x70af2b,_0x1b6a97));});return BPromise['all'](_0x33a6c9);});});});})[_0x9a89('0x1b')](function(_0x49119a){_0x474fad['rows']=_0x49119a;return _0x474fad;})[_0x9a89('0x1b')](respondWithFilteredResult(_0x2f88e9,_0x158981))[_0x9a89('0x2a')](handleError(_0x2f88e9,null));};exports[_0x9a89('0xb3')]=function(_0x33bbaf,_0x43b699){var _0x3ad9ec={'raw':![],'where':{'id':_0x33bbaf[_0x9a89('0xb4')]['id']}},_0x1bb324={};_0x1bb324[_0x9a89('0x3a')]=_[_0x9a89('0x37')](db[_0x9a89('0xb5')]['rawAttributes']);_0x1bb324[_0x9a89('0x36')]=_['keys'](_0x33bbaf[_0x9a89('0x36')]);_0x1bb324[_0x9a89('0x38')]=_['intersection'](_0x1bb324[_0x9a89('0x3a')],_0x1bb324[_0x9a89('0x36')]);_0x3ad9ec[_0x9a89('0x3b')]=_[_0x9a89('0x39')](_0x1bb324[_0x9a89('0x3a')],qs[_0x9a89('0x93')](_0x33bbaf[_0x9a89('0x36')][_0x9a89('0x93')]));_0x3ad9ec[_0x9a89('0x3b')]=_0x3ad9ec['attributes'][_0x9a89('0x3c')]?_0x3ad9ec[_0x9a89('0x3b')]:_0x1bb324[_0x9a89('0x3a')];if(_0x33bbaf['query']['includeAll']){_0x3ad9ec['include']=[{'all':!![]}];}_0x3ad9ec=_[_0x9a89('0x92')]({},_0x3ad9ec,_0x33bbaf[_0x9a89('0xb6')]);return db[_0x9a89('0xb5')]['find'](_0x3ad9ec)['then'](handleEntityNotFound(_0x43b699,null))[_0x9a89('0x1b')](respondWithResult(_0x43b699,null))[_0x9a89('0x2a')](handleError(_0x43b699,null));};exports['create']=function(_0x2cdb9d,_0x4eeb21){return db[_0x9a89('0xb5')][_0x9a89('0xb7')](_0x2cdb9d[_0x9a89('0xb8')],{})[_0x9a89('0x1b')](respondWithResult(_0x4eeb21,0xc9))[_0x9a89('0x2a')](handleError(_0x4eeb21,null));};exports['update']=function(_0x2f68,_0x329e59){if(_0x2f68[_0x9a89('0xb8')]['id']){delete _0x2f68['body']['id'];}return db[_0x9a89('0xb5')]['find']({'where':{'id':_0x2f68[_0x9a89('0xb4')]['id']}})[_0x9a89('0x1b')](handleEntityNotFound(_0x329e59,null))[_0x9a89('0x1b')](saveUpdates(_0x2f68[_0x9a89('0xb8')],null))[_0x9a89('0x1b')](respondWithResult(_0x329e59,null))[_0x9a89('0x2a')](handleError(_0x329e59,null));};exports[_0x9a89('0x1c')]=function(_0x10c36c,_0x3b9a8c){return db[_0x9a89('0xb5')][_0x9a89('0x5e')]({'where':{'id':_0x10c36c[_0x9a89('0xb4')]['id']}})[_0x9a89('0x1b')](handleEntityNotFound(_0x3b9a8c,null))[_0x9a89('0x1b')](removeEntity(_0x3b9a8c,null))[_0x9a89('0x2a')](handleError(_0x3b9a8c,null));};exports[_0x9a89('0xb9')]=function(_0x194b23,_0x2b0371){return db[_0x9a89('0xb5')][_0x9a89('0xb9')]()['then'](respondWithResult(_0x2b0371,null))['catch'](handleError(_0x2b0371,null));};exports[_0x9a89('0xba')]=function(_0xc194d9,_0x516595){return db['MailMessage']['find']({'where':{'id':_0xc194d9[_0x9a89('0xb4')]['id']}})[_0x9a89('0x1b')](handleEntityNotFound(_0x516595,null))[_0x9a89('0x1b')](function(_0x4dfd7b){if(_0x4dfd7b){return _0x4dfd7b[_0x9a89('0xba')](_0xc194d9['body'][_0x9a89('0xbb')],_[_0x9a89('0xbc')](_0xc194d9[_0x9a89('0xb8')],[_0x9a89('0xbb'),'id'])||{});}})[_0x9a89('0x1b')](respondWithResult(_0x516595,null))[_0x9a89('0x2a')](handleError(_0x516595,null));};exports[_0x9a89('0xbd')]=function(_0x4c3bb8,_0x430d77){var _0x3dccc6={'raw':![],'where':{}};var _0x3752b8={};var _0x335300={'count':0x0,'rows':[]};return db[_0x9a89('0xb5')][_0x9a89('0xb1')]({'where':{'id':_0x4c3bb8[_0x9a89('0xb4')]['id']}})[_0x9a89('0x1b')](handleEntityNotFound(_0x430d77,null))['then'](function(_0xb13343){if(_0xb13343){_0x3752b8[_0x9a89('0x3a')]=_[_0x9a89('0x37')](db['MailMessage'][_0x9a89('0x33')]);_0x3752b8[_0x9a89('0x36')]=_[_0x9a89('0x37')](_0x4c3bb8[_0x9a89('0x36')]);_0x3752b8[_0x9a89('0x38')]=_['intersection'](_0x3752b8[_0x9a89('0x3a')],_0x3752b8[_0x9a89('0x36')]);_0x3dccc6[_0x9a89('0x3b')]=_[_0x9a89('0x39')](_0x3752b8['model'],qs['fields'](_0x4c3bb8[_0x9a89('0x36')][_0x9a89('0x93')]));_0x3dccc6[_0x9a89('0x3b')]=_0x3dccc6[_0x9a89('0x3b')][_0x9a89('0x3c')]?_0x3dccc6[_0x9a89('0x3b')]:_0x3752b8[_0x9a89('0x3a')];if(!_0x4c3bb8['query'][_0x9a89('0xbe')](_0x9a89('0x3d'))){_0x3dccc6[_0x9a89('0x18')]=qs[_0x9a89('0x18')](_0x4c3bb8['query'][_0x9a89('0x18')]);_0x3dccc6[_0x9a89('0x19')]=qs['offset'](_0x4c3bb8[_0x9a89('0x36')][_0x9a89('0x19')]);}_0x3dccc6['order']=qs['sort'](_0x4c3bb8['query'][_0x9a89('0xbf')]);_0x3dccc6[_0x9a89('0x3e')]=qs[_0x9a89('0x38')](_[_0x9a89('0xc0')](_0x4c3bb8[_0x9a89('0x36')],_0x3752b8[_0x9a89('0x38')]));_0x3dccc6[_0x9a89('0x3e')][_0x9a89('0xb0')]=_0xb13343['id'];if(_0x4c3bb8[_0x9a89('0x36')][_0x9a89('0x78')]){_0x3dccc6[_0x9a89('0x3e')]=_['merge'](_0x3dccc6['where'],{'$or':_['map'](_0x3dccc6[_0x9a89('0x3b')],function(_0x1f4d70){var _0x2a93e8={};_0x2a93e8[_0x1f4d70]={'$like':'%'+_0x4c3bb8['query'][_0x9a89('0x78')]+'%'};return _0x2a93e8;})});}if(_0x4c3bb8[_0x9a89('0x36')]['$gte']){var _0x31c7b7=_0x4c3bb8[_0x9a89('0x36')][_0x9a89('0x6e')][_0x9a89('0x24')](',');var _0xcd9d3e={};_0xcd9d3e[_0x31c7b7[0x0]]={'$gte':moment(_0x31c7b7[0x1])[_0x9a89('0xc1')](_0x9a89('0xc2'))};_0x3dccc6[_0x9a89('0x3e')]=_[_0x9a89('0x92')](_0x3dccc6[_0x9a89('0x3e')],_0xcd9d3e);}_0x3dccc6=_[_0x9a89('0x92')]({},_0x3dccc6,_0x4c3bb8[_0x9a89('0xb6')]);return db[_0x9a89('0xc3')][_0x9a89('0x90')]({'where':_0x3dccc6[_0x9a89('0x3e')]})[_0x9a89('0x1b')](function(_0x2270b7){_0x335300[_0x9a89('0x90')]=_0x2270b7;if(_0x4c3bb8['query']['includeAll']){_0x3dccc6['include']=[{'all':!![]}];}return db[_0x9a89('0xc3')][_0x9a89('0xc4')](_0x3dccc6);})[_0x9a89('0x1b')](function(_0x291967){if(_0x4c3bb8[_0x9a89('0x36')][_0x9a89('0xc5')]===_0x9a89('0xc6')){for(var _0x30c36e=0x0;_0x30c36e<_0x291967[_0x9a89('0x3c')];_0x30c36e++){_0x291967[_0x30c36e][_0x9a89('0xb8')]=juice(_0x291967[_0x30c36e][_0x9a89('0xb8')]);}}_0x335300[_0x9a89('0xc7')]=_0x291967;return _0x335300;});}})[_0x9a89('0x1b')](respondWithFilteredResult(_0x430d77,_0x3dccc6))[_0x9a89('0x2a')](handleError(_0x430d77,null));};exports[_0x9a89('0xc8')]=function(_0x4f26c9,_0x59083b){return db[_0x9a89('0xb5')][_0x9a89('0x5e')]({'where':{'id':_0x4f26c9[_0x9a89('0xb4')]['id']}})[_0x9a89('0x1b')](handleEntityNotFound(_0x59083b,null))[_0x9a89('0x1b')](function(_0x3f7018){if(_0x3f7018){return _0x3f7018[_0x9a89('0xc9')](_0x4f26c9[_0x9a89('0xb8')][_0x9a89('0xbb')],_[_0x9a89('0xbc')](_0x4f26c9[_0x9a89('0xb8')],[_0x9a89('0xbb'),'id'])||{})[_0x9a89('0xca')](function(){return db[_0x9a89('0x61')][_0x9a89('0xc4')]({'attributes':['id',_0x9a89('0x41'),_0x9a89('0x42')],'where':{'id':_0x4f26c9[_0x9a89('0xb8')][_0x9a89('0xbb')]}});})[_0x9a89('0x1b')](function(_0x410af5){socket['emit'](_0x9a89('0xcb'),{'id':Number(_0x4f26c9[_0x9a89('0xb4')]['id']),'tags':_0x410af5||[]});return{'id':Number(_0x4f26c9['params']['id']),'tags':_0x410af5||[]};});}})[_0x9a89('0x1b')](respondWithResult(_0x59083b,null))[_0x9a89('0x2a')](handleError(_0x59083b,null));};exports[_0x9a89('0xcc')]=function(_0x1bfb64,_0x5bb002){return db[_0x9a89('0xb5')]['find']({'where':{'id':_0x1bfb64[_0x9a89('0xb4')]['id']}})['then'](handleEntityNotFound(_0x5bb002,null))[_0x9a89('0x1b')](function(_0x3f87fb){if(_0x3f87fb){return _0x3f87fb[_0x9a89('0xcc')](_0x1bfb64[_0x9a89('0x36')]['ids']);}})[_0x9a89('0x1b')](respondWithStatusCode(_0x5bb002,null))[_0x9a89('0x2a')](handleError(_0x5bb002,null));};exports[_0x9a89('0xcd')]=function(_0x2641f1,_0x41de73){var _0x2184ac=moment()['unix']()[_0x9a89('0x8f')]();var _0xc6bcad=path[_0x9a89('0xce')](config[_0x9a89('0xcf')],'server','files','tmp');var _0x5b892a=path[_0x9a89('0xce')](config[_0x9a89('0xcf')],'server',_0x9a89('0xd0'),_0x9a89('0xd1'));var _0x4d58d6=path[_0x9a89('0xce')](_0xc6bcad,_0x2184ac);var _0x34ba8e=util[_0x9a89('0xc1')]('transcript-%d-%s.zip',_0x2641f1[_0x9a89('0xb4')]['id'],_0x2184ac);var _0x5dc34d=path[_0x9a89('0xce')](_0xc6bcad,_0x34ba8e);var _0x32e1e6=[];if(_0x2641f1[_0x9a89('0x36')][_0x9a89('0xd1')]){_0x32e1e6[_0x9a89('0x25')]({'model':db[_0x9a89('0xd2')],'as':_0x9a89('0xd3'),'raw':!![]});}var _0x18ba74=[{'model':db['MailMessage'],'as':_0x9a89('0xd4'),'attributes':['id','body',_0x9a89('0x43'),'to','cc',_0x9a89('0xd5'),'subject',_0x9a89('0xd6')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x32e1e6}];return db[_0x9a89('0xb5')]['find']({'where':{'id':_0x2641f1[_0x9a89('0xb4')]['id']},'include':_0x18ba74})[_0x9a89('0x1b')](handleEntityNotFound(_0x41de73,null))[_0x9a89('0x1b')](function(_0x3a99b0){if(_0x3a99b0&&_0x3a99b0[_0x9a89('0xd4')]){var _0x451a54=_0x3a99b0[_0x9a89('0xd7')]({'plain':!![]});fs['mkdirSync'](_0x4d58d6);return BPromise[_0x9a89('0xd8')](_0x451a54[_0x9a89('0xd4')],function(_0x16469d,_0x22bcd6){var _0x15aec={'from':_0x16469d[_0x9a89('0x43')],'to':_0x16469d['to'],'subject':_0x16469d[_0x9a89('0xd9')],'html':htmlEntities[_0x9a89('0xda')](_0x16469d['body']),'headers':{'Date':moment(_0x16469d[_0x9a89('0xd6')])[_0x9a89('0xc1')](_0x9a89('0xdb'))},'attachments':[]};if(_0x16469d['cc']){_0x15aec[_0x9a89('0xdc')]['Cc']=_0x16469d['cc'];}if(_0x16469d[_0x9a89('0xd5')]){_0x15aec[_0x9a89('0xdc')][_0x9a89('0xdd')]=_0x16469d[_0x9a89('0xd5')];}return new BPromise(function(_0x599cf0,_0x119eed){if(_0x16469d[_0x9a89('0xd3')]){for(var _0x4a74f8=0x0;_0x4a74f8<_0x16469d[_0x9a89('0xd3')][_0x9a89('0x3c')];_0x4a74f8++){var _0x21e819=_0x16469d[_0x9a89('0xd3')][_0x4a74f8];var _0x1b9caa=path[_0x9a89('0xce')](_0x5b892a,_0x21e819[_0x9a89('0xde')]);if(fs[_0x9a89('0xdf')](_0x1b9caa)){_0x15aec[_0x9a89('0xd1')][_0x9a89('0x25')]({'name':_0x21e819[_0x9a89('0x41')],'contentType':_0x21e819[_0x9a89('0x35')],'data':fs[_0x9a89('0xe0')](_0x1b9caa)});}}}emlformat[_0x9a89('0xe1')](_0x15aec,function(_0x2eac59,_0x38ddfb){if(_0x2eac59)return _0x119eed(_0x2eac59);fs[_0x9a89('0xe2')](path[_0x9a89('0xce')](_0x4d58d6,util[_0x9a89('0xc1')](_0x9a89('0xe3'),_0x22bcd6)),_0x38ddfb);return _0x599cf0(_0x38ddfb);});});})[_0x9a89('0x1b')](function(){return new BPromise(function(_0x6dd9a1,_0x2bdcfe){zipdir(_0x4d58d6,{'saveTo':_0x5dc34d},function(_0x5e083e,_0x1846fe){if(_0x5e083e)return _0x2bdcfe(_0x5e083e);return _0x6dd9a1(_0x1846fe);});})[_0x9a89('0x1b')](function(){return new BPromise(function(_0x43649d,_0x430ebc){rimraf(_0x4d58d6,function(_0x4266ed){if(_0x4266ed)_0x430ebc(_0x4266ed);return _0x43649d();});});})[_0x9a89('0x1b')](function(){return _0x41de73[_0x9a89('0xcd')](_0x5dc34d,_0x34ba8e,function(_0x5c1b32){if(!_0x5c1b32)fs[_0x9a89('0xe4')](_0x5dc34d);});});});}else{return _0x41de73[_0x9a89('0x15')](0xc8);}})[_0x9a89('0x2a')](handleError(_0x41de73,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