Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index acc631d..dfeecfe 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb144=['reject','save','update','then','destroy','error','name','send','Users','Tags','forEach','push','TagIds','MailInteraction','lastMsgBody','lastMsgText','trimStart','catch','map','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','select','field','color','tools_tags','u.id','ui.MailInteractionId','from','user_has_mail_interactions','left_join','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','users','mail_accounts','a.id\x20=\x20i.MailAccountId','mail_messages','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','parseSearch','conditions','value','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','text','start','Tag','split','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','plainBody','some','compact','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','Sequelize','SELECT','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages','contactName','DESC','having','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','user','agent','getMailAccounts','i.MailAccountId\x20IS\x20NULL','role','sequelize','toString','keyBy','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.closedAt','i.attach','i.lastMsgDirection','i.disposition','i.secondDisposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','ui.MailInteractionId\x20IN\x20?','groupBy','MailInteractionId','findOne','enableEmailPreview','rows','show','rawAttributes','includeAll','include','options','create','body','params','describe','addMessage','MailMessage','ids','omit','getMessages','YYYY-MM-DD\x20HH:mm:ss','addTags','setTags','findAll','mailInteractionTags:save','removeTags','download','unix','join','server','files','tmp','root','attachments','transcript-%d-%s.zip','Attachment','Messages','bcc','subject','mkdirSync','each','format','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','basename','readFileSync','log','err','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','papaparse','html-to-text','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','./mailInteraction.socket','sendStatus','status','end','json','count','offset','set','Content-Range','apply'];(function(_0x529f1c,_0x437ed1){var _0x4d57ab=function(_0x39d479){while(--_0x39d479){_0x529f1c['push'](_0x529f1c['shift']());}};_0x4d57ab(++_0x437ed1);}(_0xb144,0x1be));var _0x4b14=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0xb144[_0x321bb2];return _0x9c12ed;};'use strict';var pdf=require(_0x4b14('0x0'));var emlformat=require(_0x4b14('0x1'));var rimraf=require(_0x4b14('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x4b14('0x3'));var rp=require(_0x4b14('0x4'));var moment=require('moment');var BPromise=require(_0x4b14('0x5'));var Mustache=require('mustache');var util=require(_0x4b14('0x6'));var path=require(_0x4b14('0x7'));var sox=require(_0x4b14('0x8'));var csv=require(_0x4b14('0x9'));var ejs=require(_0x4b14('0xa'));var fs=require('fs');var _=require(_0x4b14('0xb'));var squel=require(_0x4b14('0xc'));var crypto=require(_0x4b14('0xd'));var jsforce=require(_0x4b14('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x4b14('0x9'));var querystring=require('querystring');var Papa=require(_0x4b14('0xf'));var htmlToText=require(_0x4b14('0x10'));var Redis=require(_0x4b14('0x11'));var authService=require(_0x4b14('0x12'));var qs=require(_0x4b14('0x13'));var as=require(_0x4b14('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x4b14('0x15'))(_0x4b14('0x16'));var utils=require('../../config/utils');var config=require(_0x4b14('0x17'));var licenseUtil=require(_0x4b14('0x18'));var db=require(_0x4b14('0x19'))['db'];config[_0x4b14('0x1a')]=_[_0x4b14('0x1b')](config[_0x4b14('0x1a')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4b14('0x1a')]));require(_0x4b14('0x1c'))['register'](socket);function respondWithStatusCode(_0x5d4c5a,_0x4058f4){_0x4058f4=_0x4058f4||0xcc;return function(_0x64c281){if(_0x64c281){return _0x5d4c5a[_0x4b14('0x1d')](_0x4058f4);}return _0x5d4c5a[_0x4b14('0x1e')](_0x4058f4)[_0x4b14('0x1f')]();};}function respondWithResult(_0x5abd8d,_0x1ca4ef){_0x1ca4ef=_0x1ca4ef||0xc8;return function(_0x131430){if(_0x131430){return _0x5abd8d['status'](_0x1ca4ef)[_0x4b14('0x20')](_0x131430);}};}function respondWithFilteredResult(_0x2b2315,_0x3df8f8){return function(_0x139c48){if(_0x139c48){var _0x63dcb4=_0x139c48[_0x4b14('0x21')],_0x3371b8=_0x3df8f8[_0x4b14('0x22')],_0x2a84c0=_0x3df8f8['offset']+_0x3df8f8['limit'],_0x379025;if(_0x2a84c0>=_0x63dcb4){_0x2a84c0=_0x63dcb4;_0x379025=0xc8;}else{_0x379025=0xce;}_0x2b2315[_0x4b14('0x1e')](_0x379025);return _0x2b2315[_0x4b14('0x23')](_0x4b14('0x24'),_0x3371b8+'-'+_0x2a84c0+'/'+_0x63dcb4)['json'](_0x139c48);}return null;};}function patchUpdates(_0x2b5473){return function(_0x1d22ab){try{jsonpatch[_0x4b14('0x25')](_0x1d22ab,_0x2b5473,!![]);}catch(_0x1988c0){return BPromise[_0x4b14('0x26')](_0x1988c0);}return _0x1d22ab[_0x4b14('0x27')]();};}function saveUpdates(_0xbe80ae,_0x702160){return function(_0x2485d7){if(_0x2485d7){return _0x2485d7[_0x4b14('0x28')](_0xbe80ae)[_0x4b14('0x29')](function(_0x10c564){return _0x10c564;});}return null;};}function removeEntity(_0x1b7826,_0x202a75){return function(_0x59c895){if(_0x59c895){return _0x59c895[_0x4b14('0x2a')]()[_0x4b14('0x29')](function(){_0x1b7826[_0x4b14('0x1e')](0xcc)[_0x4b14('0x1f')]();});}};}function handleEntityNotFound(_0x2c4f96,_0x54d773){return function(_0x261f3d){if(!_0x261f3d){_0x2c4f96[_0x4b14('0x1d')](0x194);}return _0x261f3d;};}function handleError(_0x174ba6,_0x2ddf8c){_0x2ddf8c=_0x2ddf8c||0x1f4;return function(_0x35f62e){logger[_0x4b14('0x2b')](_0x35f62e['stack']);if(_0x35f62e[_0x4b14('0x2c')]){delete _0x35f62e[_0x4b14('0x2c')];}_0x174ba6[_0x4b14('0x1e')](_0x2ddf8c)[_0x4b14('0x2d')](_0x35f62e);};}function getInteractionUsers(_0x3cd67f,_0x4adbbb){return new BPromise(function(_0x506b45,_0x248bf7){try{if(_0x4adbbb[_0x3cd67f['id']]){_0x3cd67f[_0x4b14('0x2e')]=_['map'](_0x4adbbb[_0x3cd67f['id']],function(_0x51f7c9){return{'id':_0x51f7c9['id'],'fullname':_0x51f7c9['fullname']};});}}catch(_0x1b1576){_0x248bf7(_0x1b1576);}_0x506b45(_0x3cd67f);});}function getInteractionTags(_0x2398ce,_0x4e369b){return new BPromise(function(_0x4979f1,_0x3b4ccb){try{if(_0x2398ce['TagIds']){_0x2398ce[_0x4b14('0x2f')]=[];_0x2398ce['TagIds']['split'](',')[_0x4b14('0x30')](function(_0x467a0a){_0x2398ce[_0x4b14('0x2f')][_0x4b14('0x31')](_0x4e369b[_0x467a0a]);});}delete _0x2398ce[_0x4b14('0x32')];}catch(_0x4a9bc0){_0x3b4ccb(_0x4a9bc0);}_0x4979f1(_0x2398ce);});}function getLastMessageText(_0x3b3e4e){return new BPromise(function(_0x1d8176,_0x5872fe){return db[_0x4b14('0x33')]['findOne']({'where':{'id':_0x3b3e4e['id']},'attributes':[_0x4b14('0x34'),_0x4b14('0x35')],'raw':!![]})[_0x4b14('0x29')](function(_0x5f0e7c){if(!_0x5f0e7c[_0x4b14('0x35')]){_0x3b3e4e[_0x4b14('0x35')]=_[_0x4b14('0x36')](htmlToText['fromString'](_0x5f0e7c[_0x4b14('0x34')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]}));}else{_0x3b3e4e['lastMsgText']=_0x5f0e7c['lastMsgText'];}_0x1d8176(_0x3b3e4e);})[_0x4b14('0x37')](function(_0x558705){_0x5872fe(_0x558705);});});}function updateMailInteraction(_0x1a87bc,_0x10ca9c,_0x483fe9,_0x5dc121){return new BPromise(function(_0x112a69,_0x5d4389){return getInteractionUsers(_0x1a87bc,_0x483fe9)['then'](function(_0x8c3dd8){return getInteractionTags(_0x8c3dd8,_0x10ca9c);})[_0x4b14('0x29')](function(_0x340b47){if(_0x5dc121){_0x112a69(getLastMessageText(_0x340b47));}else{_0x112a69(_0x340b47);}})[_0x4b14('0x37')](function(_0x1bcc81){_0x5d4389(_0x1bcc81);});});}exports['index']=function(_0x342e4f,_0x26a6e5){var _0x296509={},_0x2b120e={},_0x36b367={'count':0x0,'rows':[]};var _0x519681=_[_0x4b14('0x38')](db[_0x4b14('0x33')]['rawAttributes'],function(_0xcb74c1){return{'name':_0xcb74c1[_0x4b14('0x39')],'type':_0xcb74c1[_0x4b14('0x3a')]['key']};});_0x2b120e[_0x4b14('0x3b')]=_[_0x4b14('0x38')](_0x519681,'name');_0x2b120e[_0x4b14('0x3c')]=_[_0x4b14('0x3d')](_0x342e4f[_0x4b14('0x3c')]);_0x2b120e[_0x4b14('0x3e')]=_[_0x4b14('0x3f')](_0x2b120e[_0x4b14('0x3b')],_0x2b120e[_0x4b14('0x3c')]);_0x296509[_0x4b14('0x40')]=_[_0x4b14('0x3f')](_0x2b120e['model'],qs[_0x4b14('0x41')](_0x342e4f[_0x4b14('0x3c')]['fields']));_0x296509[_0x4b14('0x40')]=_0x296509[_0x4b14('0x40')][_0x4b14('0x42')]?_0x296509[_0x4b14('0x40')]:_0x2b120e[_0x4b14('0x3b')];if(!_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x43')](_0x4b14('0x44'))){_0x296509[_0x4b14('0x45')]=qs['limit'](_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x45')]);_0x296509[_0x4b14('0x22')]=qs[_0x4b14('0x22')](_0x342e4f['query'][_0x4b14('0x22')]);}_0x296509[_0x4b14('0x46')]=qs[_0x4b14('0x47')](_0x342e4f[_0x4b14('0x3c')]['sort']);_0x296509[_0x4b14('0x48')]=qs[_0x4b14('0x3e')](_[_0x4b14('0x49')](_0x342e4f['query'],_0x2b120e[_0x4b14('0x3e')]),_0x519681);var _0xbfe7b1=[];var _0x5caa6d=squel[_0x4b14('0x4a')]()[_0x4b14('0x4b')]('id')[_0x4b14('0x4b')](_0x4b14('0x2c'))['field'](_0x4b14('0x4c'))['from'](_0x4b14('0x4d'));var _0x59fc79=squel[_0x4b14('0x4a')]()[_0x4b14('0x4b')](_0x4b14('0x4e'))[_0x4b14('0x4b')]('u.fullname')['field'](_0x4b14('0x4f'))[_0x4b14('0x50')](_0x4b14('0x51'),'ui')[_0x4b14('0x52')]('users','u','u.id\x20=\x20ui.UserId');var _0x354947=squel['select']()[_0x4b14('0x50')](_0x4b14('0x53'),'i')[_0x4b14('0x52')](_0x4b14('0x54'),'c',_0x4b14('0x55'))['left_join'](_0x4b14('0x56'),'o','o.id\x20=\x20i.UserId')['left_join'](_0x4b14('0x57'),'a',_0x4b14('0x58'))['left_join'](_0x4b14('0x59'),'me',_0x4b14('0x5a'))[_0x4b14('0x52')](_0x4b14('0x5b'),'it',_0x4b14('0x5c'))[_0x4b14('0x52')]('tools_tags','t',_0x4b14('0x5d'));var _0x3ede45=squel[_0x4b14('0x5e')]();var _0x34f622=[];var _0x4baeb4=squel[_0x4b14('0x5e')]();var _0x5f34e4;if(_0x342e4f['query']['search']){_0x5f34e4=as[_0x4b14('0x5f')](_0x342e4f['query']['search']);var _0x194c4a=_0x5f34e4['sqlOperator'];for(var _0x54dbe9=0x0;_0x54dbe9<_0x5f34e4[_0x4b14('0x60')][_0x4b14('0x42')];_0x54dbe9++){var _0x491b33=_0x5f34e4[_0x4b14('0x60')][_0x54dbe9];var _0xfcc5f4='i';var _0x54b102=_['find'](_0x519681,['name',_0x491b33[_0x4b14('0x4b')]]);if(!_0x54b102){switch(_0x491b33[_0x4b14('0x4b')]){case'unreadMessages':if(_0x491b33[_0x4b14('0x61')]==0x1){_0x354947['having']('`'+_0x491b33[_0x4b14('0x4b')]+_0x4b14('0x62'));}else{_0x354947['having']('`'+_0x491b33[_0x4b14('0x4b')]+_0x4b14('0x63'));}break;case _0x4b14('0x64'):if(_0x491b33[_0x4b14('0x65')]===_0x4b14('0x66')){if(_0x491b33[_0x4b14('0x61')]['split']('\x20')[_0x4b14('0x42')]>0x1){_0x3ede45[_0x194c4a]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x491b33[_0x4b14('0x61')]),null);}else{var _0x21865a='%'+_0x491b33[_0x4b14('0x61')]+'%';_0x3ede45[_0x194c4a](_0x4b14('0x67'),_0x21865a,_0x21865a,_0x21865a);}}else{_0x54b102=_[_0x4b14('0x68')](_0x519681,['name',_0x4b14('0x69')]);_0x491b33['field']='ContactId';_0x521b1f=as[_0x4b14('0x6a')](_0xfcc5f4,_0x54b102[_0x4b14('0x3a')],_0x491b33);_0x3ede45[_0x194c4a](_0x521b1f[_0x4b14('0x6b')],_0x521b1f[_0x4b14('0x61')][_0x4b14('0x6c')],_0x521b1f['value']['end']);}break;case _0x4b14('0x6d'):var _0xf29274=_0x491b33[_0x4b14('0x61')][_0x4b14('0x6e')](',')[_0x4b14('0x38')](function(_0x387d8b){return Number(_0x387d8b);});_0xf29274['forEach'](function(_0xe9f708){_0x4baeb4['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0xe9f708+',%');});_0x34f622=_[_0x4b14('0x6f')](_0x34f622,_0xf29274);break;case _0x4b14('0x70'):if(_0x491b33[_0x4b14('0x65')]==='$substring'){_0x3ede45[_0x194c4a](_0x4b14('0x71'),'%'+_0x491b33[_0x4b14('0x61')]+'%',null);}else{_0x54b102=_['find'](_0x519681,[_0x4b14('0x2c'),'UserId']);_0x491b33[_0x4b14('0x4b')]=_0x4b14('0x72');_0x521b1f=as[_0x4b14('0x6a')](_0xfcc5f4,_0x54b102[_0x4b14('0x3a')],_0x491b33);_0x3ede45[_0x194c4a](_0x521b1f[_0x4b14('0x6b')],_0x521b1f[_0x4b14('0x61')]['start'],_0x521b1f['value'][_0x4b14('0x1f')]);}break;case _0x4b14('0x73'):_0x521b1f=as[_0x4b14('0x6a')]('me',null,_0x491b33);_0x3ede45[_0x194c4a](_0x521b1f['text'],_0x521b1f[_0x4b14('0x61')][_0x4b14('0x6c')],_0x521b1f[_0x4b14('0x61')][_0x4b14('0x1f')]);break;}}else{var _0x521b1f=as[_0x4b14('0x6a')](_0xfcc5f4,_0x54b102['type'],_0x491b33);_0x3ede45[_0x194c4a](_0x521b1f[_0x4b14('0x6b')],_0x521b1f['value'][_0x4b14('0x6c')],_0x521b1f[_0x4b14('0x61')]['end']);}}}else{var _0x5d7e0d=_(_0x342e4f['query'])[_0x4b14('0x3d')]()[_0x4b14('0x38')](function(_0x12ba5a){return _[_0x4b14('0x74')](_0x519681,[_0x4b14('0x2c'),_0x12ba5a])?_0x12ba5a:undefined;})[_0x4b14('0x75')]()[_0x4b14('0x61')]();if(!_[_0x4b14('0x76')](_0x5d7e0d)){_0x5d7e0d[_0x4b14('0x30')](function(_0x4cf618){if(_0x4cf618===_0x4b14('0x77')){_0x354947['where'](_0x4b14('0x78'),[][_0x4b14('0x79')](_0x342e4f[_0x4b14('0x3c')][_0x4cf618]));}else if(_0x4cf618===_0x4b14('0x7a')){var _0x23ae79=JSON[_0x4b14('0x7b')](_0x342e4f['query'][_0x4cf618])[_0x4b14('0x7c')];var _0x2beb97=JSON[_0x4b14('0x7b')](_0x342e4f[_0x4b14('0x3c')][_0x4cf618])[_0x4b14('0x7d')];_0x354947[_0x4b14('0x48')](_0x4b14('0x7e'),_0x23ae79,_0x2beb97);}else{if(_0x342e4f[_0x4b14('0x3c')][_0x4cf618]==='null'){_0x354947[_0x4b14('0x48')]('i.'+_0x4cf618+_0x4b14('0x7f'));}else{_0x354947[_0x4b14('0x48')]('i.'+_0x4cf618+_0x4b14('0x80'),_0x342e4f[_0x4b14('0x3c')][_0x4cf618]);}}});}if(_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x81')]){if(_0x342e4f[_0x4b14('0x3c')]['read']==0x1){_0x354947['having'](_0x4b14('0x82'));}else{_0x354947['having'](_0x4b14('0x83'));}}if(_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x84')]){_0x34f622=_[_0x4b14('0x85')](_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x84')])?_0x342e4f['query'][_0x4b14('0x84')]:new Array(_0x342e4f[_0x4b14('0x3c')]['tag']);_0x34f622[_0x4b14('0x30')](function(_0x379aeb){_0x4baeb4['or'](_0x4b14('0x86'),'%,'+_0x379aeb+',%');});}if(_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x87')]){var _0xd52574=_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x87')]['replace']('\x5c','\x5c\x5c')[_0x4b14('0x88')](/'/g,'\x27\x27');if(qs[_0x4b14('0x89')](_0xd52574)){_0x3ede45['or'](_0x4b14('0x8a'),_0xd52574+'%');}else if(qs[_0x4b14('0x8b')](_0xd52574)){_0x3ede45['or'](_0x4b14('0x8c'),_0xd52574+'%');}else{_0x3ede45['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x4b14('0x8d')](_0xd52574))['or'](_0x4b14('0x8e'),qs[_0x4b14('0x8d')](_0xd52574));}}}_0x354947[_0x4b14('0x48')](_0x3ede45);_0x354947[_0x4b14('0x8f')]('i.id');var _0x2eada6={'type':db[_0x4b14('0x90')]['QueryTypes'][_0x4b14('0x91')],'raw':!![]};var _0x576223=_0x354947['clone']();_0x576223[_0x4b14('0x4b')](_0x4b14('0x92'));_0x576223[_0x4b14('0x4b')](_0x4b14('0x93'),_0x4b14('0x94'));if(_0x296509[_0x4b14('0x46')]){_0x296509[_0x4b14('0x46')][_0x4b14('0x30')](function(_0x158f31){var _0x2a8828=_0x158f31[0x0]===_0x4b14('0x95')?_0x158f31[0x0]:'i.'+_0x158f31[0x0];_0x354947['order'](_0x2a8828,_0x158f31[0x1]===_0x4b14('0x96')?![]:!![]);});}if(!_[_0x4b14('0x76')](_0x34f622)){_0x354947[_0x4b14('0x97')](_0x4baeb4);_0x576223['where']('t.id\x20IN\x20?',_0x34f622);}BPromise[_0x4b14('0x98')]()[_0x4b14('0x29')](function(){if(!_0x5f34e4){if(_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x77')])return;_0x576223['where']('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x354947[_0x4b14('0x48')](_0x4b14('0x99'));return;}if(_0x342e4f[_0x4b14('0x9a')]['role']!==_0x4b14('0x9b'))return;return _0x342e4f[_0x4b14('0x9a')][_0x4b14('0x9c')]({'attributes':['id'],'raw':!![]})[_0x4b14('0x29')](function(_0x5d522f){if(_[_0x4b14('0x76')](_0x5d522f)){_0x576223['where'](_0x4b14('0x9d'));_0x354947['where'](_0x4b14('0x9d'));}else{_0x576223[_0x4b14('0x48')](_0x4b14('0x78'),_[_0x4b14('0x38')](_0x5d522f,'id'));_0x354947[_0x4b14('0x48')](_0x4b14('0x78'),_[_0x4b14('0x38')](_0x5d522f,'id'));}});})[_0x4b14('0x29')](function(){if(_0x342e4f[_0x4b14('0x9a')][_0x4b14('0x9e')]==='agent'&&!_0x5f34e4&&!_0x342e4f[_0x4b14('0x3c')]['MailAccountId'])return[];return db[_0x4b14('0x9f')][_0x4b14('0x3c')](_0x576223[_0x4b14('0xa0')](),_0x2eada6);})[_0x4b14('0x29')](function(_0x30ec15){_0x36b367[_0x4b14('0x21')]=_0x30ec15[_0x4b14('0x42')];if(_0x36b367['count']===0x0)return[];return db[_0x4b14('0x9f')][_0x4b14('0x3c')](_0x5caa6d[_0x4b14('0xa0')](),_0x2eada6)['then'](function(_0x480921){_0xbfe7b1=_[_0x4b14('0xa1')](_0x480921,'id');_0x2eada6=_[_0x4b14('0xa2')](_0x2eada6,{'model':db['MailInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x342e4f[_0x4b14('0x3c')][_0x4b14('0x41')]){_0x296509[_0x4b14('0x40')][_0x4b14('0x30')](function(_0x834a09){_0x354947[_0x4b14('0x4b')]('i.'+_0x834a09);});}else{_0x354947['field'](_0x4b14('0x93'),'unreadMessages');_0x354947['field'](_0x4b14('0xa3'),'Account.key');_0x354947[_0x4b14('0x4b')](_0x4b14('0xa4'),_0x4b14('0xa5'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xa6'),'contactName');_0x354947['field']('i.id');_0x354947['field'](_0x4b14('0xa7'));_0x354947[_0x4b14('0x4b')]('i.updatedAt');_0x354947[_0x4b14('0x4b')]('i.closed');_0x354947[_0x4b14('0x4b')](_0x4b14('0xa8'));_0x354947['field'](_0x4b14('0xa9'));_0x354947[_0x4b14('0x4b')]('i.lastMsgAt');_0x354947[_0x4b14('0x4b')](_0x4b14('0xaa'));_0x354947[_0x4b14('0x4b')]('i.subject');_0x354947['field'](_0x4b14('0xab'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xac'));_0x354947[_0x4b14('0x4b')]('i.thirdDisposition');_0x354947['field'](_0x4b14('0xad'));_0x354947['field'](_0x4b14('0xae'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xaf'));_0x354947['field'](_0x4b14('0xb0'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xb1'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xb2'),_0x4b14('0xb3'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xb4'),_0x4b14('0xb5'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xb6'),_0x4b14('0xb7'));_0x354947['field']('c.phone',_0x4b14('0xb8'));_0x354947['field'](_0x4b14('0xb9'),_0x4b14('0xba'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xbb'),_0x4b14('0xbc'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xbd'),_0x4b14('0xbe'));_0x354947[_0x4b14('0x4b')](_0x4b14('0xbf'),'Owner.internal');_0x354947[_0x4b14('0x4b')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x4b14('0x32'));}if(_0x296509[_0x4b14('0x45')])_0x354947[_0x4b14('0x45')](_0x296509[_0x4b14('0x45')]);if(_0x296509[_0x4b14('0x22')])_0x354947['offset'](_0x296509[_0x4b14('0x22')]);return db[_0x4b14('0x9f')]['query'](_0x354947[_0x4b14('0xa0')](),_0x2eada6);})['then'](function(_0x390fe5){_0x59fc79[_0x4b14('0x48')](_0x4b14('0xc0'),_[_0x4b14('0x38')](_0x390fe5,'id'));return db[_0x4b14('0x9f')][_0x4b14('0x3c')](_0x59fc79[_0x4b14('0xa0')](),_0x2eada6)[_0x4b14('0x29')](function(_0xad9669){var _0x7dbda5=_[_0x4b14('0xc1')](_0xad9669,_0x4b14('0xc2'));var _0x483595=[];return db['Setting'][_0x4b14('0xc3')]({'attributes':[_0x4b14('0xc4')],'raw':!![]})['then'](function(_0x4aef86){var _0x5d7e20=_0x4aef86[_0x4b14('0xc4')];_0x390fe5[_0x4b14('0x30')](function(_0x29962b){_0x483595[_0x4b14('0x31')](updateMailInteraction(_0x29962b,_0xbfe7b1,_0x7dbda5,_0x5d7e20));});return BPromise['all'](_0x483595);});});});})[_0x4b14('0x29')](function(_0x8155f4){_0x36b367[_0x4b14('0xc5')]=_0x8155f4;return _0x36b367;})[_0x4b14('0x29')](respondWithFilteredResult(_0x26a6e5,_0x296509))[_0x4b14('0x37')](handleError(_0x26a6e5,null));};exports[_0x4b14('0xc6')]=function(_0x5d39b4,_0x8a93d0){var _0x253588={'raw':![],'where':{'id':_0x5d39b4['params']['id']}},_0x41efc9={};_0x41efc9[_0x4b14('0x3b')]=_[_0x4b14('0x3d')](db[_0x4b14('0x33')][_0x4b14('0xc7')]);_0x41efc9[_0x4b14('0x3c')]=_['keys'](_0x5d39b4[_0x4b14('0x3c')]);_0x41efc9['filters']=_['intersection'](_0x41efc9[_0x4b14('0x3b')],_0x41efc9[_0x4b14('0x3c')]);_0x253588[_0x4b14('0x40')]=_[_0x4b14('0x3f')](_0x41efc9[_0x4b14('0x3b')],qs[_0x4b14('0x41')](_0x5d39b4[_0x4b14('0x3c')][_0x4b14('0x41')]));_0x253588['attributes']=_0x253588[_0x4b14('0x40')]['length']?_0x253588['attributes']:_0x41efc9[_0x4b14('0x3b')];if(_0x5d39b4[_0x4b14('0x3c')][_0x4b14('0xc8')]){_0x253588[_0x4b14('0xc9')]=[{'all':!![]}];}_0x253588=_[_0x4b14('0xa2')]({},_0x253588,_0x5d39b4[_0x4b14('0xca')]);return db[_0x4b14('0x33')][_0x4b14('0x68')](_0x253588)[_0x4b14('0x29')](handleEntityNotFound(_0x8a93d0,null))[_0x4b14('0x29')](respondWithResult(_0x8a93d0,null))['catch'](handleError(_0x8a93d0,null));};exports[_0x4b14('0xcb')]=function(_0x44b252,_0x536b92){return db[_0x4b14('0x33')][_0x4b14('0xcb')](_0x44b252[_0x4b14('0xcc')],{})['then'](respondWithResult(_0x536b92,0xc9))[_0x4b14('0x37')](handleError(_0x536b92,null));};exports[_0x4b14('0x28')]=function(_0x2e62e0,_0x1cc4a0){if(_0x2e62e0[_0x4b14('0xcc')]['id']){delete _0x2e62e0[_0x4b14('0xcc')]['id'];}return db[_0x4b14('0x33')]['find']({'where':{'id':_0x2e62e0[_0x4b14('0xcd')]['id']}})[_0x4b14('0x29')](handleEntityNotFound(_0x1cc4a0,null))[_0x4b14('0x29')](saveUpdates(_0x2e62e0[_0x4b14('0xcc')],null))[_0x4b14('0x29')](respondWithResult(_0x1cc4a0,null))['catch'](handleError(_0x1cc4a0,null));};exports[_0x4b14('0x2a')]=function(_0x8edabf,_0x5a117d){return db[_0x4b14('0x33')][_0x4b14('0x68')]({'where':{'id':_0x8edabf[_0x4b14('0xcd')]['id']}})['then'](handleEntityNotFound(_0x5a117d,null))[_0x4b14('0x29')](removeEntity(_0x5a117d,null))[_0x4b14('0x37')](handleError(_0x5a117d,null));};exports['describe']=function(_0x49a528,_0x498d94){return db['MailInteraction'][_0x4b14('0xce')]()[_0x4b14('0x29')](respondWithResult(_0x498d94,null))[_0x4b14('0x37')](handleError(_0x498d94,null));};exports[_0x4b14('0xcf')]=function(_0x4a6616,_0x4a7749,_0x589829){return db[_0x4b14('0xd0')]['find']({'where':{'id':_0x4a6616[_0x4b14('0xcd')]['id']}})['then'](handleEntityNotFound(_0x4a7749,null))[_0x4b14('0x29')](function(_0x5889f5){if(_0x5889f5){return _0x5889f5[_0x4b14('0xcf')](_0x4a6616[_0x4b14('0xcc')][_0x4b14('0xd1')],_[_0x4b14('0xd2')](_0x4a6616[_0x4b14('0xcc')],[_0x4b14('0xd1'),'id'])||{});}})[_0x4b14('0x29')](respondWithResult(_0x4a7749,null))[_0x4b14('0x37')](handleError(_0x4a7749,null));};exports[_0x4b14('0xd3')]=function(_0x6f20ed,_0x174f56,_0x1f9abf){var _0x488bdc={'raw':![],'where':{}};var _0x17aa63={};var _0x366077={'count':0x0,'rows':[]};return db[_0x4b14('0x33')][_0x4b14('0xc3')]({'where':{'id':_0x6f20ed[_0x4b14('0xcd')]['id']}})[_0x4b14('0x29')](handleEntityNotFound(_0x174f56,null))[_0x4b14('0x29')](function(_0x2153fa){if(_0x2153fa){_0x17aa63[_0x4b14('0x3b')]=_[_0x4b14('0x3d')](db[_0x4b14('0xd0')]['rawAttributes']);_0x17aa63['query']=_[_0x4b14('0x3d')](_0x6f20ed[_0x4b14('0x3c')]);_0x17aa63['filters']=_[_0x4b14('0x3f')](_0x17aa63[_0x4b14('0x3b')],_0x17aa63['query']);_0x488bdc[_0x4b14('0x40')]=_[_0x4b14('0x3f')](_0x17aa63[_0x4b14('0x3b')],qs[_0x4b14('0x41')](_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x41')]));_0x488bdc['attributes']=_0x488bdc[_0x4b14('0x40')][_0x4b14('0x42')]?_0x488bdc[_0x4b14('0x40')]:_0x17aa63[_0x4b14('0x3b')];if(!_0x6f20ed[_0x4b14('0x3c')]['hasOwnProperty']('nolimit')){_0x488bdc['limit']=qs['limit'](_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x45')]);_0x488bdc[_0x4b14('0x22')]=qs['offset'](_0x6f20ed[_0x4b14('0x3c')]['offset']);}_0x488bdc[_0x4b14('0x46')]=qs[_0x4b14('0x47')](_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x47')]);_0x488bdc[_0x4b14('0x48')]=qs['filters'](_[_0x4b14('0x49')](_0x6f20ed[_0x4b14('0x3c')],_0x17aa63['filters']));_0x488bdc['where'][_0x4b14('0xc2')]=_0x2153fa['id'];if(_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x87')]){_0x488bdc[_0x4b14('0x48')]=_[_0x4b14('0xa2')](_0x488bdc[_0x4b14('0x48')],{'$or':_[_0x4b14('0x38')](_0x488bdc[_0x4b14('0x40')],function(_0x5efa90){var _0x46db77={};_0x46db77[_0x5efa90]={'$like':'%'+_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x87')]+'%'};return _0x46db77;})});}if(_0x6f20ed['query'][_0x4b14('0x7c')]){var _0x193ce5=_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0x7c')]['split'](',');var _0x42affc={};_0x42affc[_0x193ce5[0x0]]={'$gte':moment(_0x193ce5[0x1])['format'](_0x4b14('0xd4'))};_0x488bdc['where']=_['merge'](_0x488bdc['where'],_0x42affc);}_0x488bdc=_[_0x4b14('0xa2')]({},_0x488bdc,_0x6f20ed['options']);return db['MailMessage']['count']({'where':_0x488bdc['where']})[_0x4b14('0x29')](function(_0x2a6db6){_0x366077['count']=_0x2a6db6;if(_0x6f20ed[_0x4b14('0x3c')][_0x4b14('0xc8')]){_0x488bdc[_0x4b14('0xc9')]=[{'all':!![]}];}return db[_0x4b14('0xd0')]['findAll'](_0x488bdc);})[_0x4b14('0x29')](function(_0x23400a){_0x366077['rows']=_0x23400a;return _0x366077;});}})[_0x4b14('0x29')](respondWithFilteredResult(_0x174f56,_0x488bdc))['catch'](handleError(_0x174f56,null));};exports[_0x4b14('0xd5')]=function(_0x53d6c4,_0x10fda4,_0xd46477){return db[_0x4b14('0x33')][_0x4b14('0x68')]({'where':{'id':_0x53d6c4[_0x4b14('0xcd')]['id']}})['then'](handleEntityNotFound(_0x10fda4,null))['then'](function(_0x4c247e){if(_0x4c247e){return _0x4c247e[_0x4b14('0xd6')](_0x53d6c4[_0x4b14('0xcc')]['ids'],_[_0x4b14('0xd2')](_0x53d6c4[_0x4b14('0xcc')],['ids','id'])||{})['spread'](function(){return db['Tag'][_0x4b14('0xd7')]({'attributes':['id',_0x4b14('0x2c'),_0x4b14('0x4c')],'where':{'id':_0x53d6c4['body'][_0x4b14('0xd1')]}});})['then'](function(_0x46cade){socket['emit'](_0x4b14('0xd8'),{'id':Number(_0x53d6c4['params']['id']),'tags':_0x46cade||[]});return{'id':Number(_0x53d6c4[_0x4b14('0xcd')]['id']),'tags':_0x46cade||[]};});}})[_0x4b14('0x29')](respondWithResult(_0x10fda4,null))[_0x4b14('0x37')](handleError(_0x10fda4,null));};exports['removeTags']=function(_0x3b501b,_0x278502,_0x199a9b){return db[_0x4b14('0x33')][_0x4b14('0x68')]({'where':{'id':_0x3b501b['params']['id']}})[_0x4b14('0x29')](handleEntityNotFound(_0x278502,null))['then'](function(_0xc03d18){if(_0xc03d18){return _0xc03d18[_0x4b14('0xd9')](_0x3b501b[_0x4b14('0x3c')]['ids']);}})[_0x4b14('0x29')](respondWithStatusCode(_0x278502,null))['catch'](handleError(_0x278502,null));};exports[_0x4b14('0xda')]=function(_0x3b8408,_0x1a14ce){var _0x18e17e=moment()[_0x4b14('0xdb')]()[_0x4b14('0xa0')]();var _0x1f6938=path[_0x4b14('0xdc')](config['root'],_0x4b14('0xdd'),_0x4b14('0xde'),_0x4b14('0xdf'));var _0x23eba8=path['join'](config[_0x4b14('0xe0')],'server',_0x4b14('0xde'),_0x4b14('0xe1'));var _0x2f7080=path[_0x4b14('0xdc')](_0x1f6938,_0x18e17e);var _0x33c580=util['format'](_0x4b14('0xe2'),_0x3b8408[_0x4b14('0xcd')]['id'],_0x18e17e);var _0x362727=path[_0x4b14('0xdc')](_0x1f6938,_0x33c580);var _0x4b600d=[];if(_0x3b8408[_0x4b14('0x3c')][_0x4b14('0xe1')]){_0x4b600d[_0x4b14('0x31')]({'model':db[_0x4b14('0xe3')],'as':'Attachments','raw':!![]});}var _0x3c1ed3=[{'model':db['MailMessage'],'as':_0x4b14('0xe4'),'attributes':['id',_0x4b14('0xcc'),_0x4b14('0x50'),'to','cc',_0x4b14('0xe5'),_0x4b14('0xe6'),_0x4b14('0x7a')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x4b600d}];return db[_0x4b14('0x33')][_0x4b14('0x68')]({'where':{'id':_0x3b8408[_0x4b14('0xcd')]['id']},'include':_0x3c1ed3})[_0x4b14('0x29')](handleEntityNotFound(_0x1a14ce,null))[_0x4b14('0x29')](function(_0xef3639){if(_0xef3639&&_0xef3639[_0x4b14('0xe4')]){var _0x25abd6=_0xef3639['get']({'plain':!![]});fs[_0x4b14('0xe7')](_0x2f7080);return BPromise[_0x4b14('0xe8')](_0x25abd6[_0x4b14('0xe4')],function(_0x49eb3d,_0x999f5a){var _0x5c4b83={'from':_0x49eb3d[_0x4b14('0x50')],'to':_0x49eb3d['to'],'subject':_0x49eb3d[_0x4b14('0xe6')],'html':_0x49eb3d[_0x4b14('0xcc')],'headers':{'Date':moment(_0x49eb3d['createdAt'])[_0x4b14('0xe9')](_0x4b14('0xea'))},'attachments':[]};if(_0x49eb3d['cc']){_0x5c4b83['headers']['Cc']=_0x49eb3d['cc'];}if(_0x49eb3d[_0x4b14('0xe5')]){_0x5c4b83[_0x4b14('0xeb')][_0x4b14('0xec')]=_0x49eb3d['bcc'];}return new BPromise(function(_0x1887c3,_0x1cc870){if(_0x49eb3d[_0x4b14('0xed')]){for(var _0x174f2e=0x0;_0x174f2e<_0x49eb3d['Attachments'][_0x4b14('0x42')];_0x174f2e++){var _0x1a0aa9=_0x49eb3d[_0x4b14('0xed')][_0x174f2e];var _0x124cfc=path[_0x4b14('0xdc')](_0x23eba8,_0x1a0aa9[_0x4b14('0xee')]);if(fs['existsSync'](_0x124cfc)){_0x5c4b83[_0x4b14('0xe1')][_0x4b14('0x31')]({'name':_0x1a0aa9[_0x4b14('0x2c')],'contentType':_0x1a0aa9[_0x4b14('0x3a')],'data':fs[_0x4b14('0xef')](_0x124cfc)});}}}emlformat['build'](_0x5c4b83,function(_0x3461dd,_0x1cd4a9){if(_0x3461dd)return _0x1cc870(_0x3461dd);fs['writeFileSync'](path[_0x4b14('0xdc')](_0x2f7080,util['format']('message%d.eml',_0x999f5a)),_0x1cd4a9);return _0x1887c3(_0x1cd4a9);});});})[_0x4b14('0x29')](function(){return new BPromise(function(_0x3a6f76,_0x192bc6){zipdir(_0x2f7080,{'saveTo':_0x362727},function(_0x4508a4,_0xcd8955){if(_0x4508a4)return _0x192bc6(_0x4508a4);return _0x3a6f76(_0xcd8955);});})['then'](function(){return new BPromise(function(_0xb2e061,_0x30719d){rimraf(_0x2f7080,function(_0x2b1c3b){if(_0x2b1c3b)_0x30719d(_0x2b1c3b);return _0xb2e061();});});})[_0x4b14('0x29')](function(){return _0x1a14ce[_0x4b14('0xda')](_0x362727,_0x33c580,function(_0x4f360f){if(_0x4f360f){console[_0x4b14('0xf0')](_0x4b14('0xf1'),_0x4f360f);}else{fs['unlinkSync'](_0x362727);}});});});}else{return _0x1a14ce['sendStatus'](0xc8);}})[_0x4b14('0x37')](handleError(_0x1a14ce,null));};
\ No newline at end of file
+var _0xefb1=['path','lodash','juice','ioredis','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','json','undefined','limit','offset','count','set','update','destroy','then','error','stack','name','send','index','MailInteraction','rawAttributes','fieldName','type','key','getOptions','findAll','mail','query','catch','show','model','keys','filters','intersection','attributes','fields','length','includeAll','merge','options','find','body','describe','addMessage','MailMessage','params','ids','omit','getMessages','findOne','hasOwnProperty','order','sort','where','pick','MailInteractionId','filter','map','$gte','split','YYYY-MM-DD\x20HH:mm:ss','rows','addTags','setTags','Tag','emit','removeTags','unix','toString','root','server','files','tmp','join','format','transcript-%d-%s.zip','attachments','push','Attachment','Messages','from','bcc','createdAt','get','mkdirSync','each','missing.recipient@your.company.com','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Attachments','existsSync','readFileSync','build','writeFileSync','message%d.eml','download','unlinkSync','eml-format','rimraf','zip-dir','moment','bluebird','util'];(function(_0x21267d,_0x18c6f5){var _0x679d4c=function(_0x7f1e92){while(--_0x7f1e92){_0x21267d['push'](_0x21267d['shift']());}};_0x679d4c(++_0x18c6f5);}(_0xefb1,0xe2));var _0x1efb=function(_0x35d8b5,_0x51500f){_0x35d8b5=_0x35d8b5-0x0;var _0x50c046=_0xefb1[_0x35d8b5];return _0x50c046;};'use strict';var emlformat=require(_0x1efb('0x0'));var rimraf=require(_0x1efb('0x1'));var zipdir=require(_0x1efb('0x2'));var moment=require(_0x1efb('0x3'));var BPromise=require(_0x1efb('0x4'));var util=require(_0x1efb('0x5'));var path=require(_0x1efb('0x6'));var fs=require('fs');var _=require(_0x1efb('0x7'));var juice=require(_0x1efb('0x8'));var Redis=require(_0x1efb('0x9'));var interaction=require('../../components/interaction/service');var qs=require('../../components/parsers/qs');var logger=require(_0x1efb('0xa'))(_0x1efb('0xb'));var config=require(_0x1efb('0xc'));var db=require(_0x1efb('0xd'))['db'];var htmlEntities=require(_0x1efb('0xe'));config[_0x1efb('0xf')]=_[_0x1efb('0x10')](config[_0x1efb('0xf')],{'host':_0x1efb('0x11'),'port':0x18eb});var socket=require(_0x1efb('0x12'))(new Redis(config[_0x1efb('0xf')]));require('./mailInteraction.socket')[_0x1efb('0x13')](socket);function respondWithStatusCode(_0x5ddd5c,_0x10b3de){_0x10b3de=_0x10b3de||0xcc;return function(_0x11d57a){if(_0x11d57a){return _0x5ddd5c[_0x1efb('0x14')](_0x10b3de);}return _0x5ddd5c[_0x1efb('0x15')](_0x10b3de)['end']();};}function respondWithResult(_0x5c6cde,_0x1abf9b){_0x1abf9b=_0x1abf9b||0xc8;return function(_0x401ca5){if(_0x401ca5){return _0x5c6cde[_0x1efb('0x15')](_0x1abf9b)[_0x1efb('0x16')](_0x401ca5);}};}function respondWithFilteredResult(_0x46b465,_0x27868f){return function(_0x548c1d){if(_0x548c1d){var _0x35350c=typeof _0x27868f['offset']===_0x1efb('0x17')&&typeof _0x27868f[_0x1efb('0x18')]==='undefined';var _0x19ec4e=_0x548c1d['count'];var _0x18f166=_0x35350c?0x0:_0x27868f[_0x1efb('0x19')];var _0x422753=_0x35350c?_0x548c1d[_0x1efb('0x1a')]:_0x27868f[_0x1efb('0x19')]+_0x27868f[_0x1efb('0x18')];var _0x2336d1;if(_0x422753>=_0x19ec4e){_0x422753=_0x19ec4e;_0x2336d1=0xc8;}else{_0x2336d1=0xce;}_0x46b465[_0x1efb('0x15')](_0x2336d1);return _0x46b465[_0x1efb('0x1b')]('Content-Range',_0x18f166+'-'+_0x422753+'/'+_0x19ec4e)[_0x1efb('0x16')](_0x548c1d);}return null;};}function saveUpdates(_0x53af97){return function(_0x578e52){if(_0x578e52){return _0x578e52[_0x1efb('0x1c')](_0x53af97)['then'](function(_0x3e01da){return _0x3e01da;});}return null;};}function removeEntity(_0x3c7dd0){return function(_0x53fc10){if(_0x53fc10){return _0x53fc10[_0x1efb('0x1d')]()[_0x1efb('0x1e')](function(){_0x3c7dd0[_0x1efb('0x15')](0xcc)['end']();});}};}function handleEntityNotFound(_0x734fd0){return function(_0x16fbf9){if(!_0x16fbf9){_0x734fd0[_0x1efb('0x14')](0x194);}return _0x16fbf9;};}function handleError(_0x22bb50,_0x3477d8){_0x3477d8=_0x3477d8||0x1f4;return function(_0x42ffc8){logger[_0x1efb('0x1f')](_0x42ffc8[_0x1efb('0x20')]);if(_0x42ffc8[_0x1efb('0x21')]){delete _0x42ffc8[_0x1efb('0x21')];}_0x22bb50[_0x1efb('0x15')](_0x3477d8)[_0x1efb('0x22')](_0x42ffc8);};}exports[_0x1efb('0x23')]=function(_0x8cb136,_0x300a54){var _0x5bbbcf={};var _0x1db225=_['map'](db[_0x1efb('0x24')][_0x1efb('0x25')],function(_0x25e508){return{'name':_0x25e508[_0x1efb('0x26')],'type':_0x25e508[_0x1efb('0x27')][_0x1efb('0x28')]};});_0x5bbbcf=qs[_0x1efb('0x29')](_0x1db225,_0x8cb136);return interaction[_0x1efb('0x2a')](_0x1efb('0x2b'),_0x8cb136[_0x1efb('0x2c')],_0x8cb136['user'],_0x5bbbcf,_0x1db225)[_0x1efb('0x1e')](respondWithFilteredResult(_0x300a54,_0x5bbbcf))[_0x1efb('0x2d')](handleError(_0x300a54,null));};exports[_0x1efb('0x2e')]=function(_0x5110e3,_0x4e5eca){var _0x26e4ab={'raw':![],'where':{'id':_0x5110e3['params']['id']}},_0x2628a6={};_0x2628a6[_0x1efb('0x2f')]=_[_0x1efb('0x30')](db[_0x1efb('0x24')][_0x1efb('0x25')]);_0x2628a6['query']=_[_0x1efb('0x30')](_0x5110e3[_0x1efb('0x2c')]);_0x2628a6[_0x1efb('0x31')]=_[_0x1efb('0x32')](_0x2628a6[_0x1efb('0x2f')],_0x2628a6['query']);_0x26e4ab[_0x1efb('0x33')]=_[_0x1efb('0x32')](_0x2628a6[_0x1efb('0x2f')],qs[_0x1efb('0x34')](_0x5110e3[_0x1efb('0x2c')][_0x1efb('0x34')]));_0x26e4ab['attributes']=_0x26e4ab[_0x1efb('0x33')][_0x1efb('0x35')]?_0x26e4ab[_0x1efb('0x33')]:_0x2628a6['model'];if(_0x5110e3['query'][_0x1efb('0x36')]){_0x26e4ab['include']=[{'all':!![]}];}_0x26e4ab=_[_0x1efb('0x37')]({},_0x26e4ab,_0x5110e3[_0x1efb('0x38')]);return db[_0x1efb('0x24')][_0x1efb('0x39')](_0x26e4ab)[_0x1efb('0x1e')](handleEntityNotFound(_0x4e5eca,null))[_0x1efb('0x1e')](respondWithResult(_0x4e5eca,null))[_0x1efb('0x2d')](handleError(_0x4e5eca,null));};exports['create']=function(_0x4bcc1c,_0x39a68e){return db[_0x1efb('0x24')]['create'](_0x4bcc1c[_0x1efb('0x3a')],{})[_0x1efb('0x1e')](respondWithResult(_0x39a68e,0xc9))[_0x1efb('0x2d')](handleError(_0x39a68e,null));};exports[_0x1efb('0x1c')]=function(_0xf85af4,_0x2ea1d1){if(_0xf85af4[_0x1efb('0x3a')]['id']){delete _0xf85af4[_0x1efb('0x3a')]['id'];}return db[_0x1efb('0x24')][_0x1efb('0x39')]({'where':{'id':_0xf85af4['params']['id']}})[_0x1efb('0x1e')](handleEntityNotFound(_0x2ea1d1,null))[_0x1efb('0x1e')](saveUpdates(_0xf85af4[_0x1efb('0x3a')],null))['then'](respondWithResult(_0x2ea1d1,null))[_0x1efb('0x2d')](handleError(_0x2ea1d1,null));};exports[_0x1efb('0x1d')]=function(_0x2da400,_0x51fe5e){return db[_0x1efb('0x24')][_0x1efb('0x39')]({'where':{'id':_0x2da400['params']['id']}})['then'](handleEntityNotFound(_0x51fe5e,null))[_0x1efb('0x1e')](removeEntity(_0x51fe5e,null))[_0x1efb('0x2d')](handleError(_0x51fe5e,null));};exports[_0x1efb('0x3b')]=function(_0x3a0bba,_0x560596){return db['MailInteraction'][_0x1efb('0x3b')]()[_0x1efb('0x1e')](respondWithResult(_0x560596,null))[_0x1efb('0x2d')](handleError(_0x560596,null));};exports[_0x1efb('0x3c')]=function(_0x314c4f,_0x41b6a1){return db[_0x1efb('0x3d')]['find']({'where':{'id':_0x314c4f[_0x1efb('0x3e')]['id']}})['then'](handleEntityNotFound(_0x41b6a1,null))[_0x1efb('0x1e')](function(_0x146148){if(_0x146148){return _0x146148['addMessage'](_0x314c4f['body'][_0x1efb('0x3f')],_[_0x1efb('0x40')](_0x314c4f[_0x1efb('0x3a')],[_0x1efb('0x3f'),'id'])||{});}})[_0x1efb('0x1e')](respondWithResult(_0x41b6a1,null))[_0x1efb('0x2d')](handleError(_0x41b6a1,null));};exports[_0x1efb('0x41')]=function(_0x30654f,_0x11687d){var _0x26b355={'raw':![],'where':{}};var _0x4f426a={};var _0x29e9a6={'count':0x0,'rows':[]};return db[_0x1efb('0x24')][_0x1efb('0x42')]({'where':{'id':_0x30654f[_0x1efb('0x3e')]['id']}})[_0x1efb('0x1e')](handleEntityNotFound(_0x11687d,null))['then'](function(_0x2ae2f6){if(_0x2ae2f6){_0x4f426a['model']=_[_0x1efb('0x30')](db[_0x1efb('0x3d')][_0x1efb('0x25')]);_0x4f426a[_0x1efb('0x2c')]=_['keys'](_0x30654f[_0x1efb('0x2c')]);_0x4f426a['filters']=_[_0x1efb('0x32')](_0x4f426a[_0x1efb('0x2f')],_0x4f426a['query']);_0x26b355[_0x1efb('0x33')]=_[_0x1efb('0x32')](_0x4f426a[_0x1efb('0x2f')],qs[_0x1efb('0x34')](_0x30654f['query'][_0x1efb('0x34')]));_0x26b355['attributes']=_0x26b355[_0x1efb('0x33')][_0x1efb('0x35')]?_0x26b355[_0x1efb('0x33')]:_0x4f426a[_0x1efb('0x2f')];if(!_0x30654f[_0x1efb('0x2c')][_0x1efb('0x43')]('nolimit')){_0x26b355[_0x1efb('0x18')]=qs[_0x1efb('0x18')](_0x30654f[_0x1efb('0x2c')][_0x1efb('0x18')]);_0x26b355[_0x1efb('0x19')]=qs[_0x1efb('0x19')](_0x30654f[_0x1efb('0x2c')][_0x1efb('0x19')]);}_0x26b355[_0x1efb('0x44')]=qs['sort'](_0x30654f[_0x1efb('0x2c')][_0x1efb('0x45')]);_0x26b355[_0x1efb('0x46')]=qs[_0x1efb('0x31')](_[_0x1efb('0x47')](_0x30654f[_0x1efb('0x2c')],_0x4f426a[_0x1efb('0x31')]));_0x26b355['where'][_0x1efb('0x48')]=_0x2ae2f6['id'];if(_0x30654f[_0x1efb('0x2c')][_0x1efb('0x49')]){_0x26b355[_0x1efb('0x46')]=_[_0x1efb('0x37')](_0x26b355[_0x1efb('0x46')],{'$or':_[_0x1efb('0x4a')](_0x26b355[_0x1efb('0x33')],function(_0x2d5821){var _0x57252e={};_0x57252e[_0x2d5821]={'$like':'%'+_0x30654f['query']['filter']+'%'};return _0x57252e;})});}if(_0x30654f[_0x1efb('0x2c')]['$gte']){var _0x32f98b=_0x30654f[_0x1efb('0x2c')][_0x1efb('0x4b')][_0x1efb('0x4c')](',');var _0x2708dd={};_0x2708dd[_0x32f98b[0x0]]={'$gte':moment(_0x32f98b[0x1])['format'](_0x1efb('0x4d'))};_0x26b355['where']=_[_0x1efb('0x37')](_0x26b355['where'],_0x2708dd);}_0x26b355=_[_0x1efb('0x37')]({},_0x26b355,_0x30654f['options']);return db['MailMessage'][_0x1efb('0x1a')]({'where':_0x26b355[_0x1efb('0x46')]})['then'](function(_0x584158){_0x29e9a6[_0x1efb('0x1a')]=_0x584158;if(_0x30654f[_0x1efb('0x2c')]['includeAll']){_0x26b355['include']=[{'all':!![]}];}return db['MailMessage'][_0x1efb('0x2a')](_0x26b355);})[_0x1efb('0x1e')](function(_0x4792f4){if(_0x30654f['query']['inlineCss']==='true'){for(var _0x10d1bb=0x0;_0x10d1bb<_0x4792f4[_0x1efb('0x35')];_0x10d1bb++){_0x4792f4[_0x10d1bb][_0x1efb('0x3a')]=juice(_0x4792f4[_0x10d1bb]['body']);}}_0x29e9a6[_0x1efb('0x4e')]=_0x4792f4;return _0x29e9a6;});}})[_0x1efb('0x1e')](respondWithFilteredResult(_0x11687d,_0x26b355))['catch'](handleError(_0x11687d,null));};exports[_0x1efb('0x4f')]=function(_0x5013ba,_0x3e4370){return db[_0x1efb('0x24')][_0x1efb('0x39')]({'where':{'id':_0x5013ba[_0x1efb('0x3e')]['id']}})['then'](handleEntityNotFound(_0x3e4370,null))[_0x1efb('0x1e')](function(_0x2376e2){if(_0x2376e2){return _0x2376e2[_0x1efb('0x50')](_0x5013ba[_0x1efb('0x3a')][_0x1efb('0x3f')],_[_0x1efb('0x40')](_0x5013ba['body'],[_0x1efb('0x3f'),'id'])||{})['spread'](function(){return db[_0x1efb('0x51')]['findAll']({'attributes':['id',_0x1efb('0x21'),'color'],'where':{'id':_0x5013ba[_0x1efb('0x3a')][_0x1efb('0x3f')]}});})[_0x1efb('0x1e')](function(_0x393005){socket[_0x1efb('0x52')]('mailInteractionTags:save',{'id':Number(_0x5013ba[_0x1efb('0x3e')]['id']),'tags':_0x393005||[]});return{'id':Number(_0x5013ba[_0x1efb('0x3e')]['id']),'tags':_0x393005||[]};});}})[_0x1efb('0x1e')](respondWithResult(_0x3e4370,null))['catch'](handleError(_0x3e4370,null));};exports[_0x1efb('0x53')]=function(_0x47ef6a,_0x17c2df){return db[_0x1efb('0x24')]['find']({'where':{'id':_0x47ef6a[_0x1efb('0x3e')]['id']}})[_0x1efb('0x1e')](handleEntityNotFound(_0x17c2df,null))[_0x1efb('0x1e')](function(_0x4af0c0){if(_0x4af0c0){return _0x4af0c0[_0x1efb('0x53')](_0x47ef6a[_0x1efb('0x2c')][_0x1efb('0x3f')]);}})[_0x1efb('0x1e')](respondWithStatusCode(_0x17c2df,null))[_0x1efb('0x2d')](handleError(_0x17c2df,null));};exports['download']=function(_0x3b54bf,_0x291d64){var _0x3ebead=moment()[_0x1efb('0x54')]()[_0x1efb('0x55')]();var _0x1d3c1b=path['join'](config[_0x1efb('0x56')],_0x1efb('0x57'),_0x1efb('0x58'),_0x1efb('0x59'));var _0x5da7e5=path[_0x1efb('0x5a')](config[_0x1efb('0x56')],'server','files','attachments');var _0x3e8036=path['join'](_0x1d3c1b,_0x3ebead);var _0x57470e=util[_0x1efb('0x5b')](_0x1efb('0x5c'),_0x3b54bf['params']['id'],_0x3ebead);var _0x486e53=path['join'](_0x1d3c1b,_0x57470e);var _0x3d4769=[];if(_0x3b54bf[_0x1efb('0x2c')][_0x1efb('0x5d')]){_0x3d4769[_0x1efb('0x5e')]({'model':db[_0x1efb('0x5f')],'as':'Attachments','raw':!![]});}var _0x168e6d=[{'model':db[_0x1efb('0x3d')],'as':_0x1efb('0x60'),'attributes':['id','body',_0x1efb('0x61'),'to','cc',_0x1efb('0x62'),'subject',_0x1efb('0x63')],'where':{'secret':![]},'order':qs[_0x1efb('0x45')]('id'),'include':_0x3d4769}];return db[_0x1efb('0x24')][_0x1efb('0x39')]({'where':{'id':_0x3b54bf[_0x1efb('0x3e')]['id']},'include':_0x168e6d})[_0x1efb('0x1e')](handleEntityNotFound(_0x291d64,null))[_0x1efb('0x1e')](function(_0x54a006){if(_0x54a006&&_0x54a006[_0x1efb('0x60')]){var _0x42ba95=_0x54a006[_0x1efb('0x64')]({'plain':!![]});fs[_0x1efb('0x65')](_0x3e8036);return BPromise[_0x1efb('0x66')](_0x42ba95['Messages'],function(_0x470cd5,_0x524555){var _0x1330d1={'from':_0x470cd5[_0x1efb('0x61')],'to':_0x470cd5['to']||_0x1efb('0x67'),'subject':_0x470cd5[_0x1efb('0x68')],'html':htmlEntities[_0x1efb('0x69')](_0x470cd5['body']),'headers':{'Date':moment(_0x470cd5['createdAt'])[_0x1efb('0x5b')](_0x1efb('0x6a'))},'attachments':[]};if(_0x470cd5['cc']){_0x1330d1[_0x1efb('0x6b')]['Cc']=_0x470cd5['cc'];}if(_0x470cd5[_0x1efb('0x62')]){_0x1330d1['headers']['Bcc']=_0x470cd5[_0x1efb('0x62')];}return new BPromise(function(_0x48fe3c,_0x220bd8){if(_0x470cd5[_0x1efb('0x6c')]){for(var _0x59afd5=0x0;_0x59afd5<_0x470cd5[_0x1efb('0x6c')]['length'];_0x59afd5++){var _0x314dbd=_0x470cd5[_0x1efb('0x6c')][_0x59afd5];var _0x3d03f9=path['join'](_0x5da7e5,_0x314dbd['basename']);if(fs[_0x1efb('0x6d')](_0x3d03f9)){_0x1330d1[_0x1efb('0x5d')][_0x1efb('0x5e')]({'name':_0x314dbd['name'],'contentType':_0x314dbd[_0x1efb('0x27')],'data':fs[_0x1efb('0x6e')](_0x3d03f9)});}}}emlformat[_0x1efb('0x6f')](_0x1330d1,function(_0x564db9,_0x5c36bc){if(_0x564db9)return _0x220bd8(_0x564db9);fs[_0x1efb('0x70')](path[_0x1efb('0x5a')](_0x3e8036,util[_0x1efb('0x5b')](_0x1efb('0x71'),_0x524555)),_0x5c36bc);return _0x48fe3c(_0x5c36bc);});});})[_0x1efb('0x1e')](function(){return new BPromise(function(_0x5d6d67,_0x11475e){zipdir(_0x3e8036,{'saveTo':_0x486e53},function(_0x7d8711,_0x3d5862){if(_0x7d8711)return _0x11475e(_0x7d8711);return _0x5d6d67(_0x3d5862);});})[_0x1efb('0x1e')](function(){return new BPromise(function(_0x2dd8a6,_0x204b7f){rimraf(_0x3e8036,function(_0x2de895){if(_0x2de895)_0x204b7f(_0x2de895);return _0x2dd8a6();});});})[_0x1efb('0x1e')](function(){return _0x291d64[_0x1efb('0x72')](_0x486e53,_0x57470e,function(_0x33dc22){if(!_0x33dc22)fs[_0x1efb('0x73')](_0x486e53);});});});}else{return _0x291d64['sendStatus'](0xc8);}})[_0x1efb('0x2d')](handleError(_0x291d64,null));};
\ No newline at end of file