Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index f9c2454..39da7a6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x901a=['i.MailAccountId\x20IS\x20NOT\x20NULL','user','role','agent','i.MailAccountId\x20IS\x20NULL','sequelize','toString','merge','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','i.createdAt','i.closed','i.attach','i.lastMsgDirection','i.subject','i.substatus','i.to','i.ContactId','i.MailAccountId','c.firstName','Contact.firstName','c.lastName','c.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','MailInteractionId','Setting','enableEmailPreview','all','show','params','include','create','body','addMessage','ids','omit','getMessages','hasOwnProperty','sort','format','YYYY-MM-DD\x20HH:mm:ss','options','includeAll','findAll','addTags','spread','emit','mailInteractionTags:save','removeTags','download','unix','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','Attachment','Attachments','Messages','bcc','subject','get','mkdirSync','each','headers','Bcc','existsSync','readFileSync','writeFileSync','message%d.eml','err','unlinkSync','bluebird','mustache','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','html-to-text','juice','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./mailInteraction.socket','sendStatus','status','end','json','count','offset','limit','set','reject','save','update','then','destroy','error','name','map','TagIds','Tags','split','forEach','push','MailMessage','findOne','out','plainBody','lastMsgText','trimStart','catch','index','MailInteraction','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','order','where','pick','select','field','color','tools_tags','u.id','ui.MailInteractionId','from','user_has_mail_interactions','left_join','users','mail_interactions','cm_contacts','o.id\x20=\x20i.UserId','a.id\x20=\x20i.MailAccountId','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','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)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','Tag','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','start','compact','MailAccountId','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','isEmail','c.email\x20LIKE\x20?','getFullTextValue','i.id','Sequelize','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','isEmpty','t.id\x20IN\x20?','resolve'];(function(_0x4edc53,_0x861490){var _0x4b380a=function(_0x29a0e1){while(--_0x29a0e1){_0x4edc53['push'](_0x4edc53['shift']());}};_0x4b380a(++_0x861490);}(_0x901a,0x13c));var _0xa901=function(_0x15bb52,_0x32361d){_0x15bb52=_0x15bb52-0x0;var _0x1e926f=_0x901a[_0x15bb52];return _0x1e926f;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xa901('0x0'));var Mustache=require(_0xa901('0x1'));var util=require('util');var path=require(_0xa901('0x2'));var sox=require(_0xa901('0x3'));var csv=require('to-csv');var ejs=require(_0xa901('0x4'));var fs=require('fs');var fs_extra=require(_0xa901('0x5'));var _=require(_0xa901('0x6'));var squel=require('squel');var crypto=require(_0xa901('0x7'));var jsforce=require(_0xa901('0x8'));var deskjs=require(_0xa901('0x9'));var toCsv=require(_0xa901('0xa'));var querystring=require(_0xa901('0xb'));var Papa=require('papaparse');var htmlToText=require(_0xa901('0xc'));var juice=require(_0xa901('0xd'));var Redis=require(_0xa901('0xe'));var authService=require(_0xa901('0xf'));var qs=require(_0xa901('0x10'));var as=require(_0xa901('0x11'));var hardwareService=require(_0xa901('0x12'));var logger=require(_0xa901('0x13'))(_0xa901('0x14'));var utils=require(_0xa901('0x15'));var config=require(_0xa901('0x16'));var licenseUtil=require(_0xa901('0x17'));var db=require(_0xa901('0x18'))['db'];config['redis']=_[_0xa901('0x19')](config['redis'],{'host':_0xa901('0x1a'),'port':0x18eb});var socket=require(_0xa901('0x1b'))(new Redis(config[_0xa901('0x1c')]));require(_0xa901('0x1d'))['register'](socket);function respondWithStatusCode(_0x280a6b,_0x15ad2c){_0x15ad2c=_0x15ad2c||0xcc;return function(_0xfb40ee){if(_0xfb40ee){return _0x280a6b[_0xa901('0x1e')](_0x15ad2c);}return _0x280a6b[_0xa901('0x1f')](_0x15ad2c)[_0xa901('0x20')]();};}function respondWithResult(_0x5ad74,_0x4d219a){_0x4d219a=_0x4d219a||0xc8;return function(_0xd14957){if(_0xd14957){return _0x5ad74[_0xa901('0x1f')](_0x4d219a)[_0xa901('0x21')](_0xd14957);}};}function respondWithFilteredResult(_0x29e0b6,_0x5ae543){return function(_0x1b6b94){if(_0x1b6b94){var _0x5cee64=_0x1b6b94[_0xa901('0x22')],_0x18eb3a=_0x5ae543[_0xa901('0x23')],_0x2548e1=_0x5ae543[_0xa901('0x23')]+_0x5ae543[_0xa901('0x24')],_0x378ed1;if(_0x2548e1>=_0x5cee64){_0x2548e1=_0x5cee64;_0x378ed1=0xc8;}else{_0x378ed1=0xce;}_0x29e0b6['status'](_0x378ed1);return _0x29e0b6[_0xa901('0x25')]('Content-Range',_0x18eb3a+'-'+_0x2548e1+'/'+_0x5cee64)[_0xa901('0x21')](_0x1b6b94);}return null;};}function patchUpdates(_0x44de4b){return function(_0x87af36){try{jsonpatch['apply'](_0x87af36,_0x44de4b,!![]);}catch(_0xd48df4){return BPromise[_0xa901('0x26')](_0xd48df4);}return _0x87af36[_0xa901('0x27')]();};}function saveUpdates(_0x28642b,_0x29c497){return function(_0x1e5212){if(_0x1e5212){return _0x1e5212[_0xa901('0x28')](_0x28642b)[_0xa901('0x29')](function(_0x34770f){return _0x34770f;});}return null;};}function removeEntity(_0x11cfa4,_0x19c56b){return function(_0x32528b){if(_0x32528b){return _0x32528b[_0xa901('0x2a')]()[_0xa901('0x29')](function(){_0x11cfa4[_0xa901('0x1f')](0xcc)[_0xa901('0x20')]();});}};}function handleEntityNotFound(_0x30af46,_0x48781a){return function(_0x1d3ad2){if(!_0x1d3ad2){_0x30af46['sendStatus'](0x194);}return _0x1d3ad2;};}function handleError(_0x461419,_0x52670b){_0x52670b=_0x52670b||0x1f4;return function(_0x43b4a8){logger[_0xa901('0x2b')](_0x43b4a8['stack']);if(_0x43b4a8[_0xa901('0x2c')]){delete _0x43b4a8[_0xa901('0x2c')];}_0x461419[_0xa901('0x1f')](_0x52670b)['send'](_0x43b4a8);};}function getInteractionUsers(_0x490e86,_0x5bf761){return new BPromise(function(_0x3972bc,_0x34a427){try{if(_0x5bf761[_0x490e86['id']]){_0x490e86['Users']=_[_0xa901('0x2d')](_0x5bf761[_0x490e86['id']],function(_0x19586f){return{'id':_0x19586f['id'],'fullname':_0x19586f['fullname']};});}}catch(_0x38c59e){_0x34a427(_0x38c59e);}_0x3972bc(_0x490e86);});}function getInteractionTags(_0x3f51f5,_0x2f8678){return new BPromise(function(_0xe61f19,_0x7b59a9){try{if(_0x3f51f5[_0xa901('0x2e')]){_0x3f51f5[_0xa901('0x2f')]=[];_0x3f51f5[_0xa901('0x2e')][_0xa901('0x30')](',')[_0xa901('0x31')](function(_0x356926){_0x3f51f5[_0xa901('0x2f')][_0xa901('0x32')](_0x2f8678[_0x356926]);});}delete _0x3f51f5[_0xa901('0x2e')];}catch(_0x17834e){_0x7b59a9(_0x17834e);}_0xe61f19(_0x3f51f5);});}function getLastMessageText(_0xcc50c8){return new BPromise(function(_0x283ec7,_0x16e9bb){return db[_0xa901('0x33')][_0xa901('0x34')]({'where':{'$and':[{'MailInteractionId':_0xcc50c8['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xa901('0x35')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xa901('0x36')],'order':'-id','raw':!![]})[_0xa901('0x29')](function(_0x586cca){if(_0x586cca&&_0x586cca[_0xa901('0x36')]){_0xcc50c8[_0xa901('0x37')]=_[_0xa901('0x38')](_0x586cca[_0xa901('0x36')]);}_0x283ec7(_0xcc50c8);})['catch'](function(_0x15e6a5){_0x16e9bb(_0x15e6a5);});});}function updateMailInteraction(_0x57cebe,_0x247f33,_0x4c8bea,_0xf92d9c){return new BPromise(function(_0x3dc5a1,_0x3ec94b){return getInteractionUsers(_0x57cebe,_0x4c8bea)[_0xa901('0x29')](function(_0x5acd24){return getInteractionTags(_0x5acd24,_0x247f33);})[_0xa901('0x29')](function(_0x1ee64f){if(_0xf92d9c){_0x3dc5a1(getLastMessageText(_0x1ee64f));}else{_0x3dc5a1(_0x1ee64f);}})[_0xa901('0x39')](function(_0x3f9e57){_0x3ec94b(_0x3f9e57);});});}exports[_0xa901('0x3a')]=function(_0x290c7b,_0x4fd857){var _0x14c381={},_0xdcf4c6={},_0x1b8430={'count':0x0,'rows':[]};var _0x30880a=_[_0xa901('0x2d')](db[_0xa901('0x3b')][_0xa901('0x3c')],function(_0xfaebac){return{'name':_0xfaebac['fieldName'],'type':_0xfaebac[_0xa901('0x3d')][_0xa901('0x3e')]};});_0xdcf4c6[_0xa901('0x3f')]=_[_0xa901('0x2d')](_0x30880a,_0xa901('0x2c'));_0xdcf4c6[_0xa901('0x40')]=_[_0xa901('0x41')](_0x290c7b[_0xa901('0x40')]);_0xdcf4c6[_0xa901('0x42')]=_[_0xa901('0x43')](_0xdcf4c6[_0xa901('0x3f')],_0xdcf4c6[_0xa901('0x40')]);_0x14c381[_0xa901('0x44')]=_['intersection'](_0xdcf4c6[_0xa901('0x3f')],qs[_0xa901('0x45')](_0x290c7b['query']['fields']));_0x14c381[_0xa901('0x44')]=_0x14c381['attributes'][_0xa901('0x46')]?_0x14c381[_0xa901('0x44')]:_0xdcf4c6[_0xa901('0x3f')];if(!_0x290c7b[_0xa901('0x40')]['hasOwnProperty'](_0xa901('0x47'))){_0x14c381[_0xa901('0x24')]=qs[_0xa901('0x24')](_0x290c7b[_0xa901('0x40')]['limit']);_0x14c381[_0xa901('0x23')]=qs[_0xa901('0x23')](_0x290c7b['query'][_0xa901('0x23')]);}_0x14c381[_0xa901('0x48')]=qs['sort'](_0x290c7b[_0xa901('0x40')]['sort']);_0x14c381[_0xa901('0x49')]=qs[_0xa901('0x42')](_[_0xa901('0x4a')](_0x290c7b[_0xa901('0x40')],_0xdcf4c6[_0xa901('0x42')]),_0x30880a);var _0x51f412=[];var _0x41c4d3=squel[_0xa901('0x4b')]()[_0xa901('0x4c')]('id')[_0xa901('0x4c')](_0xa901('0x2c'))[_0xa901('0x4c')](_0xa901('0x4d'))['from'](_0xa901('0x4e'));var _0x53d6cf=squel[_0xa901('0x4b')]()['field'](_0xa901('0x4f'))['field']('u.fullname')[_0xa901('0x4c')](_0xa901('0x50'))[_0xa901('0x51')](_0xa901('0x52'),'ui')[_0xa901('0x53')](_0xa901('0x54'),'u','u.id\x20=\x20ui.UserId');var _0x58f5f9=squel['select']()[_0xa901('0x51')](_0xa901('0x55'),'i')[_0xa901('0x53')](_0xa901('0x56'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')['left_join'](_0xa901('0x54'),'o',_0xa901('0x57'))[_0xa901('0x53')]('mail_accounts','a',_0xa901('0x58'))['left_join']('mail_messages','me',_0xa901('0x59'))[_0xa901('0x53')](_0xa901('0x5a'),'it',_0xa901('0x5b'))[_0xa901('0x53')](_0xa901('0x4e'),'t',_0xa901('0x5c'));var _0x306d62=squel[_0xa901('0x5d')]();var _0x3dc543=[];var _0x36843e=squel[_0xa901('0x5d')]();var _0x1cdd53;if(_0x290c7b[_0xa901('0x40')][_0xa901('0x5e')]){_0x1cdd53=as[_0xa901('0x5f')](_0x290c7b[_0xa901('0x40')]['search']);var _0x5d914e=_0x1cdd53['sqlOperator'];for(var _0x22b1a9=0x0;_0x22b1a9<_0x1cdd53[_0xa901('0x60')][_0xa901('0x46')];_0x22b1a9++){var _0x92800b=_0x1cdd53[_0xa901('0x60')][_0x22b1a9];var _0x45c00d='i';var _0x3c48d7=_[_0xa901('0x61')](_0x30880a,[_0xa901('0x2c'),_0x92800b[_0xa901('0x4c')]]);if(!_0x3c48d7){switch(_0x92800b['field']){case _0xa901('0x62'):if(_0x92800b[_0xa901('0x63')]==0x1){_0x58f5f9[_0xa901('0x64')]('`'+_0x92800b[_0xa901('0x4c')]+_0xa901('0x65'));}else{_0x58f5f9[_0xa901('0x64')]('`'+_0x92800b[_0xa901('0x4c')]+_0xa901('0x66'));}break;case'Contact':if(_0x92800b[_0xa901('0x67')]===_0xa901('0x68')){if(_0x92800b['value'][_0xa901('0x30')]('\x20')[_0xa901('0x46')]>0x1){_0x306d62[_0x5d914e](_0xa901('0x69'),qs['getFullTextValue'](_0x92800b[_0xa901('0x63')]),null);}else{var _0x5b58d8='%'+_0x92800b['value']+'%';_0x306d62[_0x5d914e](_0xa901('0x6a'),_0x5b58d8,_0x5b58d8,_0x5b58d8);}}else{_0x3c48d7=_['find'](_0x30880a,[_0xa901('0x2c'),_0xa901('0x6b')]);_0x92800b[_0xa901('0x4c')]=_0xa901('0x6b');_0x4c9f2f=as[_0xa901('0x6c')](_0x45c00d,_0x3c48d7['type'],_0x92800b);_0x306d62[_0x5d914e](_0x4c9f2f[_0xa901('0x6d')],_0x4c9f2f['value']['start'],_0x4c9f2f[_0xa901('0x63')][_0xa901('0x20')]);}break;case _0xa901('0x6e'):var _0x3e2a87=_0x92800b[_0xa901('0x63')][_0xa901('0x30')](',')[_0xa901('0x2d')](function(_0x36e3c5){return Number(_0x36e3c5);});_0x3e2a87[_0xa901('0x31')](function(_0x4c948f){_0x36843e['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x4c948f+',%');});_0x3dc543=_[_0xa901('0x6f')](_0x3dc543,_0x3e2a87);break;case _0xa901('0x70'):if(_0x92800b[_0xa901('0x67')]===_0xa901('0x68')){_0x306d62[_0x5d914e](_0xa901('0x71'),'%'+_0x92800b[_0xa901('0x63')]+'%',null);}else{_0x3c48d7=_[_0xa901('0x61')](_0x30880a,[_0xa901('0x2c'),_0xa901('0x72')]);_0x92800b[_0xa901('0x4c')]=_0xa901('0x72');_0x4c9f2f=as[_0xa901('0x6c')](_0x45c00d,_0x3c48d7['type'],_0x92800b);_0x306d62[_0x5d914e](_0x4c9f2f['text'],_0x4c9f2f[_0xa901('0x63')][_0xa901('0x73')],_0x4c9f2f['value'][_0xa901('0x20')]);}break;case _0xa901('0x36'):_0x4c9f2f=as[_0xa901('0x6c')]('me',null,_0x92800b);_0x306d62[_0x5d914e](_0x4c9f2f['text'],_0x4c9f2f[_0xa901('0x63')][_0xa901('0x73')],_0x4c9f2f['value'][_0xa901('0x20')]);break;}}else{var _0x4c9f2f=as[_0xa901('0x6c')](_0x45c00d,_0x3c48d7[_0xa901('0x3d')],_0x92800b);_0x306d62[_0x5d914e](_0x4c9f2f[_0xa901('0x6d')],_0x4c9f2f['value']['start'],_0x4c9f2f[_0xa901('0x63')][_0xa901('0x20')]);}}}else{var _0x1b9f66=_(_0x290c7b['query'])[_0xa901('0x41')]()[_0xa901('0x2d')](function(_0x574c8c){return _['some'](_0x30880a,[_0xa901('0x2c'),_0x574c8c])?_0x574c8c:undefined;})[_0xa901('0x74')]()[_0xa901('0x63')]();if(!_['isEmpty'](_0x1b9f66)){_0x1b9f66[_0xa901('0x31')](function(_0x23e0cd){if(_0x23e0cd===_0xa901('0x75')){_0x58f5f9[_0xa901('0x49')]('i.MailAccountId\x20IN\x20?',[]['concat'](_0x290c7b['query'][_0x23e0cd]));}else if(_0x23e0cd===_0xa901('0x76')){var _0x1a0118=JSON[_0xa901('0x77')](_0x290c7b[_0xa901('0x40')][_0x23e0cd])[_0xa901('0x78')];var _0x1cf2f5=JSON[_0xa901('0x77')](_0x290c7b[_0xa901('0x40')][_0x23e0cd])[_0xa901('0x79')];_0x58f5f9[_0xa901('0x49')](_0xa901('0x7a'),_0x1a0118,_0x1cf2f5);}else{if(_0x290c7b[_0xa901('0x40')][_0x23e0cd]===_0xa901('0x7b')){_0x58f5f9[_0xa901('0x49')]('i.'+_0x23e0cd+'\x20IS\x20NULL');}else{_0x58f5f9[_0xa901('0x49')]('i.'+_0x23e0cd+_0xa901('0x7c'),_0x290c7b[_0xa901('0x40')][_0x23e0cd]);}}});}if(_0x290c7b['query'][_0xa901('0x7d')]){if(_0x290c7b[_0xa901('0x40')][_0xa901('0x7d')]==0x1){_0x58f5f9[_0xa901('0x64')](_0xa901('0x7e'));}else{_0x58f5f9[_0xa901('0x64')](_0xa901('0x7f'));}}if(_0x290c7b[_0xa901('0x40')][_0xa901('0x80')]){_0x3dc543=_['isArray'](_0x290c7b['query'][_0xa901('0x80')])?_0x290c7b['query'][_0xa901('0x80')]:new Array(_0x290c7b[_0xa901('0x40')]['tag']);_0x3dc543[_0xa901('0x31')](function(_0xb6792d){_0x36843e['or'](_0xa901('0x81'),'%,'+_0xb6792d+',%');});}if(_0x290c7b[_0xa901('0x40')][_0xa901('0x82')]){var _0x16eb64=_0x290c7b[_0xa901('0x40')]['filter'][_0xa901('0x83')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xa901('0x84')](_0x16eb64)){_0x306d62['or']('i.id\x20LIKE\x20?',_0x16eb64+'%');}else if(qs[_0xa901('0x85')](_0x16eb64)){_0x306d62['or'](_0xa901('0x86'),_0x16eb64+'%');}else{_0x306d62['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x16eb64))['or']('MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xa901('0x87')](_0x16eb64));}}}_0x58f5f9['where'](_0x306d62);_0x58f5f9['group'](_0xa901('0x88'));var _0xbb80e5={'type':db[_0xa901('0x89')]['QueryTypes'][_0xa901('0x8a')],'raw':!![]};var _0x3f4758=_0x58f5f9[_0xa901('0x8b')]();_0x3f4758[_0xa901('0x4c')](_0xa901('0x88'));_0x3f4758[_0xa901('0x4c')](_0xa901('0x8c'),_0xa901('0x62'));if(_0x14c381[_0xa901('0x48')]){_0x14c381[_0xa901('0x48')][_0xa901('0x31')](function(_0x2ef0ee){var _0x2c00a2=_0x2ef0ee[0x0]===_0xa901('0x8d')?_0x2ef0ee[0x0]:'i.'+_0x2ef0ee[0x0];_0x58f5f9[_0xa901('0x48')](_0x2c00a2,_0x2ef0ee[0x1]===_0xa901('0x8e')?![]:!![]);});}if(!_[_0xa901('0x8f')](_0x3dc543)){_0x58f5f9['having'](_0x36843e);_0x3f4758[_0xa901('0x49')](_0xa901('0x90'),_0x3dc543);}BPromise[_0xa901('0x91')]()[_0xa901('0x29')](function(){if(!_0x1cdd53){if(_0x290c7b[_0xa901('0x40')][_0xa901('0x75')])return;_0x3f4758[_0xa901('0x49')]('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x58f5f9[_0xa901('0x49')](_0xa901('0x92'));return;}if(_0x290c7b[_0xa901('0x93')][_0xa901('0x94')]!==_0xa901('0x95'))return;return _0x290c7b[_0xa901('0x93')]['getMailAccounts']({'attributes':['id'],'raw':!![]})[_0xa901('0x29')](function(_0x35db1f){if(_['isEmpty'](_0x35db1f)){_0x3f4758['where'](_0xa901('0x96'));_0x58f5f9['where'](_0xa901('0x96'));}else{_0x3f4758[_0xa901('0x49')]('i.MailAccountId\x20IN\x20?',_[_0xa901('0x2d')](_0x35db1f,'id'));_0x58f5f9[_0xa901('0x49')]('i.MailAccountId\x20IN\x20?',_[_0xa901('0x2d')](_0x35db1f,'id'));}});})[_0xa901('0x29')](function(){if(_0x290c7b[_0xa901('0x93')]['role']===_0xa901('0x95')&&!_0x1cdd53&&!_0x290c7b[_0xa901('0x40')][_0xa901('0x75')])return[];return db[_0xa901('0x97')]['query'](_0x3f4758['toString'](),_0xbb80e5);})['then'](function(_0x15680d){_0x1b8430['count']=_0x15680d[_0xa901('0x46')];if(_0x1b8430['count']===0x0)return[];return db[_0xa901('0x97')][_0xa901('0x40')](_0x41c4d3[_0xa901('0x98')](),_0xbb80e5)[_0xa901('0x29')](function(_0x3a39dc){_0x51f412=_['keyBy'](_0x3a39dc,'id');_0xbb80e5=_[_0xa901('0x99')](_0xbb80e5,{'model':db[_0xa901('0x3b')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x290c7b[_0xa901('0x40')]['fields']){_0x14c381[_0xa901('0x44')][_0xa901('0x31')](function(_0x5b70e9){_0x58f5f9[_0xa901('0x4c')]('i.'+_0x5b70e9);});}else{_0x58f5f9[_0xa901('0x4c')](_0xa901('0x8c'),_0xa901('0x62'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0x9a'),'Account.key');_0x58f5f9[_0xa901('0x4c')](_0xa901('0x9b'),_0xa901('0x9c'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0x9d'),_0xa901('0x8d'));_0x58f5f9[_0xa901('0x4c')]('i.id');_0x58f5f9[_0xa901('0x4c')](_0xa901('0x9e'));_0x58f5f9[_0xa901('0x4c')]('i.updatedAt');_0x58f5f9[_0xa901('0x4c')](_0xa901('0x9f'));_0x58f5f9[_0xa901('0x4c')]('i.closedAt');_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa0'));_0x58f5f9[_0xa901('0x4c')]('i.lastMsgAt');_0x58f5f9['field'](_0xa901('0xa1'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa2'));_0x58f5f9[_0xa901('0x4c')]('i.disposition');_0x58f5f9['field']('i.secondDisposition');_0x58f5f9[_0xa901('0x4c')]('i.thirdDisposition');_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa3'));_0x58f5f9['field'](_0xa901('0xa4'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa5'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa6'));_0x58f5f9[_0xa901('0x4c')]('i.UserId');_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa7'),_0xa901('0xa8'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0xa9'),'Contact.lastName');_0x58f5f9[_0xa901('0x4c')](_0xa901('0xaa'),'Contact.email');_0x58f5f9[_0xa901('0x4c')](_0xa901('0xab'),_0xa901('0xac'));_0x58f5f9['field'](_0xa901('0xad'),_0xa901('0xae'));_0x58f5f9['field'](_0xa901('0xaf'),_0xa901('0xb0'));_0x58f5f9[_0xa901('0x4c')](_0xa901('0xb1'),_0xa901('0xb2'));_0x58f5f9['field'](_0xa901('0xb3'),_0xa901('0xb4'));_0x58f5f9[_0xa901('0x4c')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0xa901('0x2e'));}if(_0x14c381[_0xa901('0x24')])_0x58f5f9[_0xa901('0x24')](_0x14c381['limit']);if(_0x14c381['offset'])_0x58f5f9[_0xa901('0x23')](_0x14c381[_0xa901('0x23')]);return db[_0xa901('0x97')][_0xa901('0x40')](_0x58f5f9[_0xa901('0x98')](),_0xbb80e5);})['then'](function(_0xd99e91){_0x53d6cf[_0xa901('0x49')]('ui.MailInteractionId\x20IN\x20?',_[_0xa901('0x2d')](_0xd99e91,'id'));return db['sequelize'][_0xa901('0x40')](_0x53d6cf[_0xa901('0x98')](),_0xbb80e5)[_0xa901('0x29')](function(_0x54f358){var _0x46aed3=_['groupBy'](_0x54f358,_0xa901('0xb5'));var _0x598a35=[];return db[_0xa901('0xb6')][_0xa901('0x34')]({'attributes':[_0xa901('0xb7')],'raw':!![]})[_0xa901('0x29')](function(_0x366da5){var _0x4045f0=_0x366da5['enableEmailPreview'];_0xd99e91[_0xa901('0x31')](function(_0x182248){_0x598a35[_0xa901('0x32')](updateMailInteraction(_0x182248,_0x51f412,_0x46aed3,_0x4045f0));});return BPromise[_0xa901('0xb8')](_0x598a35);});});});})[_0xa901('0x29')](function(_0x73f1d6){_0x1b8430['rows']=_0x73f1d6;return _0x1b8430;})[_0xa901('0x29')](respondWithFilteredResult(_0x4fd857,_0x14c381))['catch'](handleError(_0x4fd857,null));};exports[_0xa901('0xb9')]=function(_0x5a91eb,_0x617a1b){var _0xd731ae={'raw':![],'where':{'id':_0x5a91eb[_0xa901('0xba')]['id']}},_0x30e271={};_0x30e271['model']=_[_0xa901('0x41')](db[_0xa901('0x3b')][_0xa901('0x3c')]);_0x30e271[_0xa901('0x40')]=_['keys'](_0x5a91eb[_0xa901('0x40')]);_0x30e271[_0xa901('0x42')]=_[_0xa901('0x43')](_0x30e271[_0xa901('0x3f')],_0x30e271[_0xa901('0x40')]);_0xd731ae[_0xa901('0x44')]=_['intersection'](_0x30e271[_0xa901('0x3f')],qs[_0xa901('0x45')](_0x5a91eb['query']['fields']));_0xd731ae[_0xa901('0x44')]=_0xd731ae['attributes'][_0xa901('0x46')]?_0xd731ae[_0xa901('0x44')]:_0x30e271[_0xa901('0x3f')];if(_0x5a91eb[_0xa901('0x40')]['includeAll']){_0xd731ae[_0xa901('0xbb')]=[{'all':!![]}];}_0xd731ae=_['merge']({},_0xd731ae,_0x5a91eb['options']);return db[_0xa901('0x3b')][_0xa901('0x61')](_0xd731ae)['then'](handleEntityNotFound(_0x617a1b,null))[_0xa901('0x29')](respondWithResult(_0x617a1b,null))[_0xa901('0x39')](handleError(_0x617a1b,null));};exports[_0xa901('0xbc')]=function(_0x5cd22b,_0x383b1d){return db['MailInteraction'][_0xa901('0xbc')](_0x5cd22b[_0xa901('0xbd')],{})[_0xa901('0x29')](respondWithResult(_0x383b1d,0xc9))[_0xa901('0x39')](handleError(_0x383b1d,null));};exports['update']=function(_0x4fa5a0,_0x3e126e){if(_0x4fa5a0[_0xa901('0xbd')]['id']){delete _0x4fa5a0['body']['id'];}return db[_0xa901('0x3b')]['find']({'where':{'id':_0x4fa5a0['params']['id']}})[_0xa901('0x29')](handleEntityNotFound(_0x3e126e,null))['then'](saveUpdates(_0x4fa5a0['body'],null))[_0xa901('0x29')](respondWithResult(_0x3e126e,null))[_0xa901('0x39')](handleError(_0x3e126e,null));};exports[_0xa901('0x2a')]=function(_0x1c661e,_0x1d9dc0){return db[_0xa901('0x3b')]['find']({'where':{'id':_0x1c661e[_0xa901('0xba')]['id']}})['then'](handleEntityNotFound(_0x1d9dc0,null))[_0xa901('0x29')](removeEntity(_0x1d9dc0,null))[_0xa901('0x39')](handleError(_0x1d9dc0,null));};exports['describe']=function(_0x480c5f,_0x118dd7){return db[_0xa901('0x3b')]['describe']()[_0xa901('0x29')](respondWithResult(_0x118dd7,null))[_0xa901('0x39')](handleError(_0x118dd7,null));};exports[_0xa901('0xbe')]=function(_0x36b694,_0x45cc45,_0x3d3c55){return db[_0xa901('0x33')][_0xa901('0x61')]({'where':{'id':_0x36b694[_0xa901('0xba')]['id']}})['then'](handleEntityNotFound(_0x45cc45,null))[_0xa901('0x29')](function(_0x40c5e5){if(_0x40c5e5){return _0x40c5e5['addMessage'](_0x36b694['body'][_0xa901('0xbf')],_[_0xa901('0xc0')](_0x36b694['body'],[_0xa901('0xbf'),'id'])||{});}})[_0xa901('0x29')](respondWithResult(_0x45cc45,null))[_0xa901('0x39')](handleError(_0x45cc45,null));};exports[_0xa901('0xc1')]=function(_0x4ea16d,_0x1c41c5,_0x29101d){var _0x324ed5={'raw':![],'where':{}};var _0x403110={};var _0x69fb1f={'count':0x0,'rows':[]};return db[_0xa901('0x3b')]['findOne']({'where':{'id':_0x4ea16d[_0xa901('0xba')]['id']}})['then'](handleEntityNotFound(_0x1c41c5,null))[_0xa901('0x29')](function(_0x383998){if(_0x383998){_0x403110[_0xa901('0x3f')]=_[_0xa901('0x41')](db[_0xa901('0x33')][_0xa901('0x3c')]);_0x403110['query']=_[_0xa901('0x41')](_0x4ea16d['query']);_0x403110['filters']=_[_0xa901('0x43')](_0x403110[_0xa901('0x3f')],_0x403110[_0xa901('0x40')]);_0x324ed5[_0xa901('0x44')]=_[_0xa901('0x43')](_0x403110['model'],qs[_0xa901('0x45')](_0x4ea16d[_0xa901('0x40')][_0xa901('0x45')]));_0x324ed5[_0xa901('0x44')]=_0x324ed5[_0xa901('0x44')][_0xa901('0x46')]?_0x324ed5[_0xa901('0x44')]:_0x403110['model'];if(!_0x4ea16d[_0xa901('0x40')][_0xa901('0xc2')](_0xa901('0x47'))){_0x324ed5[_0xa901('0x24')]=qs['limit'](_0x4ea16d[_0xa901('0x40')]['limit']);_0x324ed5[_0xa901('0x23')]=qs['offset'](_0x4ea16d['query'][_0xa901('0x23')]);}_0x324ed5['order']=qs[_0xa901('0xc3')](_0x4ea16d[_0xa901('0x40')]['sort']);_0x324ed5['where']=qs[_0xa901('0x42')](_['pick'](_0x4ea16d[_0xa901('0x40')],_0x403110['filters']));_0x324ed5['where'][_0xa901('0xb5')]=_0x383998['id'];if(_0x4ea16d['query'][_0xa901('0x82')]){_0x324ed5[_0xa901('0x49')]=_[_0xa901('0x99')](_0x324ed5[_0xa901('0x49')],{'$or':_[_0xa901('0x2d')](_0x324ed5[_0xa901('0x44')],function(_0x3950dc){var _0x92519f={};_0x92519f[_0x3950dc]={'$like':'%'+_0x4ea16d[_0xa901('0x40')][_0xa901('0x82')]+'%'};return _0x92519f;})});}if(_0x4ea16d[_0xa901('0x40')][_0xa901('0x78')]){var _0x1a7b44=_0x4ea16d[_0xa901('0x40')]['$gte'][_0xa901('0x30')](',');var _0x498309={};_0x498309[_0x1a7b44[0x0]]={'$gte':moment(_0x1a7b44[0x1])[_0xa901('0xc4')](_0xa901('0xc5'))};_0x324ed5[_0xa901('0x49')]=_[_0xa901('0x99')](_0x324ed5[_0xa901('0x49')],_0x498309);}_0x324ed5=_['merge']({},_0x324ed5,_0x4ea16d[_0xa901('0xc6')]);return db[_0xa901('0x33')][_0xa901('0x22')]({'where':_0x324ed5[_0xa901('0x49')]})[_0xa901('0x29')](function(_0x7a4813){_0x69fb1f[_0xa901('0x22')]=_0x7a4813;if(_0x4ea16d[_0xa901('0x40')][_0xa901('0xc7')]){_0x324ed5[_0xa901('0xbb')]=[{'all':!![]}];}return db[_0xa901('0x33')][_0xa901('0xc8')](_0x324ed5);})['then'](function(_0x2055f4){if(_0x4ea16d[_0xa901('0x40')]['inlineCss']==='true'){for(var _0x474b26=0x0;_0x474b26<_0x2055f4['length'];_0x474b26++){_0x2055f4[_0x474b26][_0xa901('0xbd')]=juice(_0x2055f4[_0x474b26][_0xa901('0xbd')]);}}_0x69fb1f['rows']=_0x2055f4;return _0x69fb1f;});}})['then'](respondWithFilteredResult(_0x1c41c5,_0x324ed5))[_0xa901('0x39')](handleError(_0x1c41c5,null));};exports[_0xa901('0xc9')]=function(_0x19b657,_0x243528,_0x2698d3){return db[_0xa901('0x3b')]['find']({'where':{'id':_0x19b657[_0xa901('0xba')]['id']}})[_0xa901('0x29')](handleEntityNotFound(_0x243528,null))[_0xa901('0x29')](function(_0x58841e){if(_0x58841e){return _0x58841e['setTags'](_0x19b657[_0xa901('0xbd')][_0xa901('0xbf')],_[_0xa901('0xc0')](_0x19b657[_0xa901('0xbd')],[_0xa901('0xbf'),'id'])||{})[_0xa901('0xca')](function(){return db[_0xa901('0x6e')][_0xa901('0xc8')]({'attributes':['id',_0xa901('0x2c'),'color'],'where':{'id':_0x19b657[_0xa901('0xbd')][_0xa901('0xbf')]}});})['then'](function(_0x2d9cc3){socket[_0xa901('0xcb')](_0xa901('0xcc'),{'id':Number(_0x19b657[_0xa901('0xba')]['id']),'tags':_0x2d9cc3||[]});return{'id':Number(_0x19b657[_0xa901('0xba')]['id']),'tags':_0x2d9cc3||[]};});}})[_0xa901('0x29')](respondWithResult(_0x243528,null))[_0xa901('0x39')](handleError(_0x243528,null));};exports[_0xa901('0xcd')]=function(_0xb9a257,_0x2882c1,_0x242e6d){return db['MailInteraction'][_0xa901('0x61')]({'where':{'id':_0xb9a257[_0xa901('0xba')]['id']}})[_0xa901('0x29')](handleEntityNotFound(_0x2882c1,null))[_0xa901('0x29')](function(_0x35ae80){if(_0x35ae80){return _0x35ae80[_0xa901('0xcd')](_0xb9a257['query'][_0xa901('0xbf')]);}})[_0xa901('0x29')](respondWithStatusCode(_0x2882c1,null))[_0xa901('0x39')](handleError(_0x2882c1,null));};exports[_0xa901('0xce')]=function(_0x43e471,_0x19cce7){var _0x1fe089=moment()[_0xa901('0xcf')]()[_0xa901('0x98')]();var _0x483671=path[_0xa901('0xd0')](config[_0xa901('0xd1')],_0xa901('0xd2'),_0xa901('0xd3'),_0xa901('0xd4'));var _0x4d2754=path['join'](config[_0xa901('0xd1')],_0xa901('0xd2'),_0xa901('0xd3'),_0xa901('0xd5'));var _0x2e3418=path['join'](_0x483671,_0x1fe089);var _0x2f8551=util['format'](_0xa901('0xd6'),_0x43e471['params']['id'],_0x1fe089);var _0x552b46=path[_0xa901('0xd0')](_0x483671,_0x2f8551);var _0x42a800=[];if(_0x43e471[_0xa901('0x40')][_0xa901('0xd5')]){_0x42a800[_0xa901('0x32')]({'model':db[_0xa901('0xd7')],'as':_0xa901('0xd8'),'raw':!![]});}var _0x5ea7a4=[{'model':db[_0xa901('0x33')],'as':_0xa901('0xd9'),'attributes':['id','body',_0xa901('0x51'),'to','cc',_0xa901('0xda'),_0xa901('0xdb'),_0xa901('0x76')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x42a800}];return db['MailInteraction']['find']({'where':{'id':_0x43e471['params']['id']},'include':_0x5ea7a4})[_0xa901('0x29')](handleEntityNotFound(_0x19cce7,null))[_0xa901('0x29')](function(_0x304033){if(_0x304033&&_0x304033[_0xa901('0xd9')]){var _0x174f5f=_0x304033[_0xa901('0xdc')]({'plain':!![]});fs[_0xa901('0xdd')](_0x2e3418);return BPromise[_0xa901('0xde')](_0x174f5f[_0xa901('0xd9')],function(_0x45d0fd,_0x34c324){var _0x64e96={'from':_0x45d0fd[_0xa901('0x51')],'to':_0x45d0fd['to'],'subject':_0x45d0fd[_0xa901('0xdb')],'html':_0x45d0fd['body'],'headers':{'Date':moment(_0x45d0fd[_0xa901('0x76')])[_0xa901('0xc4')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x45d0fd['cc']){_0x64e96[_0xa901('0xdf')]['Cc']=_0x45d0fd['cc'];}if(_0x45d0fd[_0xa901('0xda')]){_0x64e96['headers'][_0xa901('0xe0')]=_0x45d0fd['bcc'];}return new BPromise(function(_0x433986,_0x36ef58){if(_0x45d0fd[_0xa901('0xd8')]){for(var _0x570b55=0x0;_0x570b55<_0x45d0fd[_0xa901('0xd8')][_0xa901('0x46')];_0x570b55++){var _0x364741=_0x45d0fd['Attachments'][_0x570b55];var _0x182dfa=path['join'](_0x4d2754,_0x364741['basename']);if(fs[_0xa901('0xe1')](_0x182dfa)){_0x64e96[_0xa901('0xd5')][_0xa901('0x32')]({'name':_0x364741[_0xa901('0x2c')],'contentType':_0x364741[_0xa901('0x3d')],'data':fs[_0xa901('0xe2')](_0x182dfa)});}}}emlformat['build'](_0x64e96,function(_0x51bb1a,_0x33634d){if(_0x51bb1a)return _0x36ef58(_0x51bb1a);fs[_0xa901('0xe3')](path[_0xa901('0xd0')](_0x2e3418,util[_0xa901('0xc4')](_0xa901('0xe4'),_0x34c324)),_0x33634d);return _0x433986(_0x33634d);});});})[_0xa901('0x29')](function(){return new BPromise(function(_0x1abe8b,_0x52c7fd){zipdir(_0x2e3418,{'saveTo':_0x552b46},function(_0x5ab416,_0x3d037d){if(_0x5ab416)return _0x52c7fd(_0x5ab416);return _0x1abe8b(_0x3d037d);});})[_0xa901('0x29')](function(){return new BPromise(function(_0x46f819,_0x7b0b77){rimraf(_0x2e3418,function(_0xbbe4b0){if(_0xbbe4b0)_0x7b0b77(_0xbbe4b0);return _0x46f819();});});})['then'](function(){return _0x19cce7[_0xa901('0xce')](_0x552b46,_0x2f8551,function(_0x37b9b6){if(_0x37b9b6){console['log'](_0xa901('0xe5'),_0x37b9b6);}else{fs[_0xa901('0xe6')](_0x552b46);}});});});}else{return _0x19cce7[_0xa901('0x1e')](0xc8);}})[_0xa901('0x39')](handleError(_0x19cce7,null));};
\ No newline at end of file
+var _0xe53f=['split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','rows','addTags','setTags','omit','Tag','emit','mailInteractionTags:save','removeTags','download','unix','root','tmp','join','server','transcript-%d-%s.zip','attachments','push','Attachment','Attachments','Messages','from','bcc','createdAt','get','each','missing.recipient@your.company.com','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','readFileSync','build','writeFileSync','unlinkSync','sendStatus','eml-format','rimraf','zip-dir','moment','util','path','lodash','juice','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','end','status','json','offset','undefined','limit','count','update','error','stack','name','send','index','map','MailInteraction','rawAttributes','type','key','getOptions','findAll','query','user','then','catch','model','keys','attributes','fields','length','includeAll','include','merge','options','find','create','body','params','describe','MailMessage','addMessage','ids','getMessages','filters','nolimit','order','sort','where','pick','MailInteractionId','filter'];(function(_0x4e6d0e,_0x4630d6){var _0x44cb4f=function(_0x72bba0){while(--_0x72bba0){_0x4e6d0e['push'](_0x4e6d0e['shift']());}};_0x44cb4f(++_0x4630d6);}(_0xe53f,0x94));var _0xfe53=function(_0x2589ed,_0x3dca09){_0x2589ed=_0x2589ed-0x0;var _0x4b8e6b=_0xe53f[_0x2589ed];return _0x4b8e6b;};'use strict';var emlformat=require(_0xfe53('0x0'));var rimraf=require(_0xfe53('0x1'));var zipdir=require(_0xfe53('0x2'));var moment=require(_0xfe53('0x3'));var BPromise=require('bluebird');var util=require(_0xfe53('0x4'));var path=require(_0xfe53('0x5'));var fs=require('fs');var _=require(_0xfe53('0x6'));var juice=require(_0xfe53('0x7'));var Redis=require('ioredis');var interaction=require('../../components/interaction/service');var qs=require('../../components/parsers/qs');var logger=require(_0xfe53('0x8'))(_0xfe53('0x9'));var config=require(_0xfe53('0xa'));var db=require(_0xfe53('0xb'))['db'];var htmlEntities=require(_0xfe53('0xc'));config[_0xfe53('0xd')]=_['defaults'](config['redis'],{'host':_0xfe53('0xe'),'port':0x18eb});var socket=require(_0xfe53('0xf'))(new Redis(config['redis']));require(_0xfe53('0x10'))[_0xfe53('0x11')](socket);function respondWithStatusCode(_0x140d67,_0x2eb651){_0x2eb651=_0x2eb651||0xcc;return function(_0x2b7711){if(_0x2b7711){return _0x140d67['sendStatus'](_0x2eb651);}return _0x140d67['status'](_0x2eb651)[_0xfe53('0x12')]();};}function respondWithResult(_0x4218d9,_0x5608ea){_0x5608ea=_0x5608ea||0xc8;return function(_0x434cd6){if(_0x434cd6){return _0x4218d9[_0xfe53('0x13')](_0x5608ea)[_0xfe53('0x14')](_0x434cd6);}};}function respondWithFilteredResult(_0x305bad,_0x2d7c3e){return function(_0x344eaa){if(_0x344eaa){var _0x5e168a=typeof _0x2d7c3e[_0xfe53('0x15')]===_0xfe53('0x16')&&typeof _0x2d7c3e[_0xfe53('0x17')]==='undefined';var _0x2e9c0a=_0x344eaa[_0xfe53('0x18')];var _0x18f5b2=_0x5e168a?0x0:_0x2d7c3e[_0xfe53('0x15')];var _0x53cca3=_0x5e168a?_0x344eaa[_0xfe53('0x18')]:_0x2d7c3e[_0xfe53('0x15')]+_0x2d7c3e[_0xfe53('0x17')];var _0x21e903;if(_0x53cca3>=_0x2e9c0a){_0x53cca3=_0x2e9c0a;_0x21e903=0xc8;}else{_0x21e903=0xce;}_0x305bad[_0xfe53('0x13')](_0x21e903);return _0x305bad['set']('Content-Range',_0x18f5b2+'-'+_0x53cca3+'/'+_0x2e9c0a)[_0xfe53('0x14')](_0x344eaa);}return null;};}function saveUpdates(_0x37e797){return function(_0x835066){if(_0x835066){return _0x835066[_0xfe53('0x19')](_0x37e797)['then'](function(_0x89ab46){return _0x89ab46;});}return null;};}function removeEntity(_0x3507fd){return function(_0x4f3703){if(_0x4f3703){return _0x4f3703['destroy']()['then'](function(){_0x3507fd[_0xfe53('0x13')](0xcc)[_0xfe53('0x12')]();});}};}function handleEntityNotFound(_0x5d8aab){return function(_0x51a30e){if(!_0x51a30e){_0x5d8aab['sendStatus'](0x194);}return _0x51a30e;};}function handleError(_0x3fcaa1,_0x42f3b8){_0x42f3b8=_0x42f3b8||0x1f4;return function(_0x5917e4){logger[_0xfe53('0x1a')](_0x5917e4[_0xfe53('0x1b')]);if(_0x5917e4[_0xfe53('0x1c')]){delete _0x5917e4['name'];}_0x3fcaa1[_0xfe53('0x13')](_0x42f3b8)[_0xfe53('0x1d')](_0x5917e4);};}exports[_0xfe53('0x1e')]=function(_0x3b709a,_0x3adbab){var _0x2044ac={};var _0xce4ee1=_[_0xfe53('0x1f')](db[_0xfe53('0x20')][_0xfe53('0x21')],function(_0x4948e1){return{'name':_0x4948e1['fieldName'],'type':_0x4948e1[_0xfe53('0x22')][_0xfe53('0x23')]};});_0x2044ac=qs[_0xfe53('0x24')](_0xce4ee1,_0x3b709a);return interaction[_0xfe53('0x25')]('mail',_0x3b709a[_0xfe53('0x26')],_0x3b709a[_0xfe53('0x27')],_0x2044ac,_0xce4ee1)[_0xfe53('0x28')](respondWithFilteredResult(_0x3adbab,_0x2044ac))[_0xfe53('0x29')](handleError(_0x3adbab,null));};exports['show']=function(_0x29f500,_0x4125bc){var _0x349217={'raw':![],'where':{'id':_0x29f500['params']['id']}},_0x7ceda1={};_0x7ceda1[_0xfe53('0x2a')]=_[_0xfe53('0x2b')](db['MailInteraction']['rawAttributes']);_0x7ceda1[_0xfe53('0x26')]=_[_0xfe53('0x2b')](_0x29f500[_0xfe53('0x26')]);_0x7ceda1['filters']=_['intersection'](_0x7ceda1[_0xfe53('0x2a')],_0x7ceda1[_0xfe53('0x26')]);_0x349217[_0xfe53('0x2c')]=_['intersection'](_0x7ceda1['model'],qs[_0xfe53('0x2d')](_0x29f500[_0xfe53('0x26')][_0xfe53('0x2d')]));_0x349217[_0xfe53('0x2c')]=_0x349217['attributes'][_0xfe53('0x2e')]?_0x349217[_0xfe53('0x2c')]:_0x7ceda1[_0xfe53('0x2a')];if(_0x29f500[_0xfe53('0x26')][_0xfe53('0x2f')]){_0x349217[_0xfe53('0x30')]=[{'all':!![]}];}_0x349217=_[_0xfe53('0x31')]({},_0x349217,_0x29f500[_0xfe53('0x32')]);return db[_0xfe53('0x20')][_0xfe53('0x33')](_0x349217)[_0xfe53('0x28')](handleEntityNotFound(_0x4125bc,null))[_0xfe53('0x28')](respondWithResult(_0x4125bc,null))['catch'](handleError(_0x4125bc,null));};exports[_0xfe53('0x34')]=function(_0x1802cd,_0x1a36ee){return db[_0xfe53('0x20')][_0xfe53('0x34')](_0x1802cd[_0xfe53('0x35')],{})['then'](respondWithResult(_0x1a36ee,0xc9))[_0xfe53('0x29')](handleError(_0x1a36ee,null));};exports[_0xfe53('0x19')]=function(_0x4eff65,_0x3c15ef){if(_0x4eff65['body']['id']){delete _0x4eff65['body']['id'];}return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x4eff65[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x3c15ef,null))[_0xfe53('0x28')](saveUpdates(_0x4eff65[_0xfe53('0x35')],null))[_0xfe53('0x28')](respondWithResult(_0x3c15ef,null))[_0xfe53('0x29')](handleError(_0x3c15ef,null));};exports['destroy']=function(_0x3b1a66,_0x41261a){return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x3b1a66[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x41261a,null))[_0xfe53('0x28')](removeEntity(_0x41261a,null))[_0xfe53('0x29')](handleError(_0x41261a,null));};exports['describe']=function(_0x417d19,_0x33b145){return db[_0xfe53('0x20')][_0xfe53('0x37')]()['then'](respondWithResult(_0x33b145,null))['catch'](handleError(_0x33b145,null));};exports['addMessage']=function(_0x512d1e,_0x4b8af3){return db[_0xfe53('0x38')][_0xfe53('0x33')]({'where':{'id':_0x512d1e[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x4b8af3,null))[_0xfe53('0x28')](function(_0xe19642){if(_0xe19642){return _0xe19642[_0xfe53('0x39')](_0x512d1e[_0xfe53('0x35')][_0xfe53('0x3a')],_['omit'](_0x512d1e['body'],['ids','id'])||{});}})[_0xfe53('0x28')](respondWithResult(_0x4b8af3,null))[_0xfe53('0x29')](handleError(_0x4b8af3,null));};exports[_0xfe53('0x3b')]=function(_0x41452c,_0x5afda9){var _0x165f6b={'raw':![],'where':{}};var _0x34d466={};var _0x451e30={'count':0x0,'rows':[]};return db[_0xfe53('0x20')]['findOne']({'where':{'id':_0x41452c[_0xfe53('0x36')]['id']}})['then'](handleEntityNotFound(_0x5afda9,null))[_0xfe53('0x28')](function(_0x179d4c){if(_0x179d4c){_0x34d466['model']=_[_0xfe53('0x2b')](db[_0xfe53('0x38')][_0xfe53('0x21')]);_0x34d466[_0xfe53('0x26')]=_[_0xfe53('0x2b')](_0x41452c[_0xfe53('0x26')]);_0x34d466[_0xfe53('0x3c')]=_['intersection'](_0x34d466[_0xfe53('0x2a')],_0x34d466[_0xfe53('0x26')]);_0x165f6b['attributes']=_['intersection'](_0x34d466['model'],qs[_0xfe53('0x2d')](_0x41452c['query'][_0xfe53('0x2d')]));_0x165f6b[_0xfe53('0x2c')]=_0x165f6b['attributes'][_0xfe53('0x2e')]?_0x165f6b[_0xfe53('0x2c')]:_0x34d466['model'];if(!_0x41452c['query']['hasOwnProperty'](_0xfe53('0x3d'))){_0x165f6b[_0xfe53('0x17')]=qs[_0xfe53('0x17')](_0x41452c['query']['limit']);_0x165f6b[_0xfe53('0x15')]=qs[_0xfe53('0x15')](_0x41452c[_0xfe53('0x26')][_0xfe53('0x15')]);}_0x165f6b[_0xfe53('0x3e')]=qs['sort'](_0x41452c[_0xfe53('0x26')][_0xfe53('0x3f')]);_0x165f6b[_0xfe53('0x40')]=qs[_0xfe53('0x3c')](_[_0xfe53('0x41')](_0x41452c[_0xfe53('0x26')],_0x34d466[_0xfe53('0x3c')]));_0x165f6b[_0xfe53('0x40')][_0xfe53('0x42')]=_0x179d4c['id'];if(_0x41452c[_0xfe53('0x26')][_0xfe53('0x43')]){_0x165f6b[_0xfe53('0x40')]=_[_0xfe53('0x31')](_0x165f6b[_0xfe53('0x40')],{'$or':_[_0xfe53('0x1f')](_0x165f6b[_0xfe53('0x2c')],function(_0x417fd3){var _0x3b6077={};_0x3b6077[_0x417fd3]={'$like':'%'+_0x41452c[_0xfe53('0x26')][_0xfe53('0x43')]+'%'};return _0x3b6077;})});}if(_0x41452c[_0xfe53('0x26')]['$gte']){var _0x557406=_0x41452c[_0xfe53('0x26')]['$gte'][_0xfe53('0x44')](',');var _0x3976fd={};_0x3976fd[_0x557406[0x0]]={'$gte':moment(_0x557406[0x1])[_0xfe53('0x45')](_0xfe53('0x46'))};_0x165f6b[_0xfe53('0x40')]=_[_0xfe53('0x31')](_0x165f6b[_0xfe53('0x40')],_0x3976fd);}_0x165f6b=_[_0xfe53('0x31')]({},_0x165f6b,_0x41452c[_0xfe53('0x32')]);return db[_0xfe53('0x38')][_0xfe53('0x18')]({'where':_0x165f6b[_0xfe53('0x40')]})['then'](function(_0x30547c){_0x451e30[_0xfe53('0x18')]=_0x30547c;if(_0x41452c[_0xfe53('0x26')][_0xfe53('0x2f')]){_0x165f6b[_0xfe53('0x30')]=[{'all':!![]}];}return db[_0xfe53('0x38')][_0xfe53('0x25')](_0x165f6b);})['then'](function(_0x2875ef){if(_0x41452c['query'][_0xfe53('0x47')]===_0xfe53('0x48')){for(var _0x34d948=0x0;_0x34d948<_0x2875ef[_0xfe53('0x2e')];_0x34d948++){_0x2875ef[_0x34d948][_0xfe53('0x35')]=juice(_0x2875ef[_0x34d948]['body']);}}_0x451e30[_0xfe53('0x49')]=_0x2875ef;return _0x451e30;});}})[_0xfe53('0x28')](respondWithFilteredResult(_0x5afda9,_0x165f6b))[_0xfe53('0x29')](handleError(_0x5afda9,null));};exports[_0xfe53('0x4a')]=function(_0x2868df,_0x51b21e){return db['MailInteraction'][_0xfe53('0x33')]({'where':{'id':_0x2868df[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x51b21e,null))[_0xfe53('0x28')](function(_0x15171e){if(_0x15171e){return _0x15171e[_0xfe53('0x4b')](_0x2868df['body'][_0xfe53('0x3a')],_[_0xfe53('0x4c')](_0x2868df[_0xfe53('0x35')],[_0xfe53('0x3a'),'id'])||{})['spread'](function(){return db[_0xfe53('0x4d')][_0xfe53('0x25')]({'attributes':['id',_0xfe53('0x1c'),'color'],'where':{'id':_0x2868df[_0xfe53('0x35')][_0xfe53('0x3a')]}});})[_0xfe53('0x28')](function(_0x325a31){socket[_0xfe53('0x4e')](_0xfe53('0x4f'),{'id':Number(_0x2868df[_0xfe53('0x36')]['id']),'tags':_0x325a31||[]});return{'id':Number(_0x2868df[_0xfe53('0x36')]['id']),'tags':_0x325a31||[]};});}})[_0xfe53('0x28')](respondWithResult(_0x51b21e,null))['catch'](handleError(_0x51b21e,null));};exports[_0xfe53('0x50')]=function(_0x31c84c,_0x4b8e1e){return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x31c84c[_0xfe53('0x36')]['id']}})['then'](handleEntityNotFound(_0x4b8e1e,null))[_0xfe53('0x28')](function(_0x2c4aed){if(_0x2c4aed){return _0x2c4aed[_0xfe53('0x50')](_0x31c84c[_0xfe53('0x26')][_0xfe53('0x3a')]);}})[_0xfe53('0x28')](respondWithStatusCode(_0x4b8e1e,null))[_0xfe53('0x29')](handleError(_0x4b8e1e,null));};exports[_0xfe53('0x51')]=function(_0x577fcc,_0x690608){var _0x362cd7=moment()[_0xfe53('0x52')]()['toString']();var _0x247caf=path['join'](config[_0xfe53('0x53')],'server','files',_0xfe53('0x54'));var _0x2cb755=path[_0xfe53('0x55')](config[_0xfe53('0x53')],_0xfe53('0x56'),'files','attachments');var _0x5416c0=path[_0xfe53('0x55')](_0x247caf,_0x362cd7);var _0x169b1c=util[_0xfe53('0x45')](_0xfe53('0x57'),_0x577fcc[_0xfe53('0x36')]['id'],_0x362cd7);var _0x4699c0=path['join'](_0x247caf,_0x169b1c);var _0x329bdb=[];if(_0x577fcc[_0xfe53('0x26')][_0xfe53('0x58')]){_0x329bdb[_0xfe53('0x59')]({'model':db[_0xfe53('0x5a')],'as':_0xfe53('0x5b'),'raw':!![]});}var _0x27c6fa=[{'model':db[_0xfe53('0x38')],'as':_0xfe53('0x5c'),'attributes':['id',_0xfe53('0x35'),_0xfe53('0x5d'),'to','cc',_0xfe53('0x5e'),'subject',_0xfe53('0x5f')],'where':{'secret':![]},'order':qs[_0xfe53('0x3f')]('id'),'include':_0x329bdb}];return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x577fcc['params']['id']},'include':_0x27c6fa})[_0xfe53('0x28')](handleEntityNotFound(_0x690608,null))[_0xfe53('0x28')](function(_0x27fe99){if(_0x27fe99&&_0x27fe99[_0xfe53('0x5c')]){var _0x532d8c=_0x27fe99[_0xfe53('0x60')]({'plain':!![]});fs['mkdirSync'](_0x5416c0);return BPromise[_0xfe53('0x61')](_0x532d8c[_0xfe53('0x5c')],function(_0x20f832,_0x3c6efb){var _0x41e3eb={'from':_0x20f832[_0xfe53('0x5d')],'to':_0x20f832['to']||_0xfe53('0x62'),'subject':_0x20f832['subject'],'html':htmlEntities['decode'](_0x20f832[_0xfe53('0x35')]),'headers':{'Date':moment(_0x20f832[_0xfe53('0x5f')])[_0xfe53('0x45')](_0xfe53('0x63'))},'attachments':[]};if(_0x20f832['cc']){_0x41e3eb[_0xfe53('0x64')]['Cc']=_0x20f832['cc'];}if(_0x20f832[_0xfe53('0x5e')]){_0x41e3eb[_0xfe53('0x64')][_0xfe53('0x65')]=_0x20f832['bcc'];}return new BPromise(function(_0x32080b,_0x37b817){if(_0x20f832[_0xfe53('0x5b')]){for(var _0x457f9c=0x0;_0x457f9c<_0x20f832[_0xfe53('0x5b')][_0xfe53('0x2e')];_0x457f9c++){var _0x38177f=_0x20f832[_0xfe53('0x5b')][_0x457f9c];var _0x5b46eb=path[_0xfe53('0x55')](_0x2cb755,_0x38177f[_0xfe53('0x66')]);if(fs['existsSync'](_0x5b46eb)){_0x41e3eb[_0xfe53('0x58')]['push']({'name':_0x38177f[_0xfe53('0x1c')],'contentType':_0x38177f[_0xfe53('0x22')],'data':fs[_0xfe53('0x67')](_0x5b46eb)});}}}emlformat[_0xfe53('0x68')](_0x41e3eb,function(_0x3ca824,_0x1d8285){if(_0x3ca824)return _0x37b817(_0x3ca824);fs[_0xfe53('0x69')](path[_0xfe53('0x55')](_0x5416c0,util[_0xfe53('0x45')]('message%d.eml',_0x3c6efb)),_0x1d8285);return _0x32080b(_0x1d8285);});});})[_0xfe53('0x28')](function(){return new BPromise(function(_0x5d02a6,_0x41f075){zipdir(_0x5416c0,{'saveTo':_0x4699c0},function(_0x52d766,_0x483c37){if(_0x52d766)return _0x41f075(_0x52d766);return _0x5d02a6(_0x483c37);});})[_0xfe53('0x28')](function(){return new BPromise(function(_0x47d8ac,_0x3be57d){rimraf(_0x5416c0,function(_0x3cdeaf){if(_0x3cdeaf)_0x3be57d(_0x3cdeaf);return _0x47d8ac();});});})[_0xfe53('0x28')](function(){return _0x690608[_0xfe53('0x51')](_0x4699c0,_0x169b1c,function(_0x2fb9fc){if(!_0x2fb9fc)fs[_0xfe53('0x6a')](_0x4699c0);});});});}else{return _0x690608[_0xfe53('0x6b')](0xc8);}})['catch'](handleError(_0x690608,null));};
\ No newline at end of file