Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 2cb3ef4..39da7a6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa9e0=['MailInteractionId','Setting','enableEmailPreview','push','all','rows','show','params','include','merge','options','create','body','describe','addMessage','MailMessage','ids','omit','intersection','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','addTags','setTags','emit','mailInteractionTags:save','removeTags','unix','root','files','tmp','server','transcript-%d-%s.zip','join','attachments','Attachment','subject','Messages','get','mkdirSync','each','headers','bcc','Attachments','basename','existsSync','readFileSync','build','writeFileSync','download','log','err','unlinkSync','html-pdf','eml-format','rimraf','request-promise','bluebird','mustache','util','path','sox','ejs','lodash','squel','desk.js','papaparse','html-to-text','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/environment','../../mysqldb','redis','defaults','localhost','./mailInteraction.socket','register','status','count','offset','limit','set','Content-Range','update','destroy','then','sendStatus','stack','name','send','Users','fullname','TagIds','Tags','split','forEach','MailInteraction','findOne','lastMsgText','trimStart','fromString','lastMsgBody','catch','index','map','rawAttributes','fieldName','model','query','keys','filters','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','select','field','color','from','tools_tags','ui.MailInteractionId','left_join','users','u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','mail_accounts','a.id\x20=\x20i.MailAccountId','me.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','conditions','value','having','Contact','$substring','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','text','start','end','Tag','operator','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','plainBody','type','some','compact','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','null','\x20IS\x20NULL','\x20=\x20?','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','\x27\x27\x27\x27','isNumeric','i.id\x20LIKE\x20?','isEmail','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages','order','t.id\x20IN\x20?','journey','i.MailAccountId\x20IS\x20NOT\x20NULL','user','getMailAccounts','i.MailAccountId\x20IS\x20NULL','sequelize','toString','keyBy','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.createdAt','i.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.subject','i.disposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy'];(function(_0x2fd9c1,_0x2c9e9c){var _0x2f6b4f=function(_0x326610){while(--_0x326610){_0x2fd9c1['push'](_0x2fd9c1['shift']());}};_0x2f6b4f(++_0x2c9e9c);}(_0xa9e0,0x123));var _0x0a9e=function(_0x5e3b04,_0xbb6795){_0x5e3b04=_0x5e3b04-0x0;var _0x1fc44d=_0xa9e0[_0x5e3b04];return _0x1fc44d;};'use strict';var pdf=require(_0x0a9e('0x0'));var emlformat=require(_0x0a9e('0x1'));var rimraf=require(_0x0a9e('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x0a9e('0x3'));var moment=require('moment');var BPromise=require(_0x0a9e('0x4'));var Mustache=require(_0x0a9e('0x5'));var util=require(_0x0a9e('0x6'));var path=require(_0x0a9e('0x7'));var sox=require(_0x0a9e('0x8'));var csv=require('to-csv');var ejs=require(_0x0a9e('0x9'));var fs=require('fs');var _=require(_0x0a9e('0xa'));var squel=require(_0x0a9e('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x0a9e('0xc'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x0a9e('0xd'));var htmlToText=require(_0x0a9e('0xe'));var Redis=require(_0x0a9e('0xf'));var authService=require(_0x0a9e('0x10'));var qs=require(_0x0a9e('0x11'));var as=require(_0x0a9e('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x0a9e('0x13'));var db=require(_0x0a9e('0x14'))['db'];config[_0x0a9e('0x15')]=_[_0x0a9e('0x16')](config[_0x0a9e('0x15')],{'host':_0x0a9e('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0a9e('0x15')]));require(_0x0a9e('0x18'))[_0x0a9e('0x19')](socket);function respondWithStatusCode(_0x281129,_0x44dcfd){_0x44dcfd=_0x44dcfd||0xcc;return function(_0x4d5611){if(_0x4d5611){return _0x281129['sendStatus'](_0x44dcfd);}return _0x281129[_0x0a9e('0x1a')](_0x44dcfd)['end']();};}function respondWithResult(_0x1985b6,_0x519dfd){_0x519dfd=_0x519dfd||0xc8;return function(_0x16033c){if(_0x16033c){return _0x1985b6[_0x0a9e('0x1a')](_0x519dfd)['json'](_0x16033c);}};}function respondWithFilteredResult(_0x225616,_0x5a0a06){return function(_0x459eb1){if(_0x459eb1){var _0x478723=_0x459eb1[_0x0a9e('0x1b')],_0x106033=_0x5a0a06[_0x0a9e('0x1c')],_0x205fd6=_0x5a0a06[_0x0a9e('0x1c')]+_0x5a0a06[_0x0a9e('0x1d')],_0x31b1ca;if(_0x205fd6>=_0x478723){_0x205fd6=_0x478723;_0x31b1ca=0xc8;}else{_0x31b1ca=0xce;}_0x225616[_0x0a9e('0x1a')](_0x31b1ca);return _0x225616[_0x0a9e('0x1e')](_0x0a9e('0x1f'),_0x106033+'-'+_0x205fd6+'/'+_0x478723)['json'](_0x459eb1);}return null;};}function patchUpdates(_0x2c3407){return function(_0x155cce){try{jsonpatch['apply'](_0x155cce,_0x2c3407,!![]);}catch(_0x20f109){return BPromise['reject'](_0x20f109);}return _0x155cce['save']();};}function saveUpdates(_0x3a02e1,_0x432e56){return function(_0x38e7c4){if(_0x38e7c4){return _0x38e7c4[_0x0a9e('0x20')](_0x3a02e1)['then'](function(_0xfb6e48){return _0xfb6e48;});}return null;};}function removeEntity(_0x2fb0e4,_0x3b45bc){return function(_0x4d00e6){if(_0x4d00e6){return _0x4d00e6[_0x0a9e('0x21')]()[_0x0a9e('0x22')](function(){_0x2fb0e4[_0x0a9e('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x59181e,_0x197ec0){return function(_0x3a8e58){if(!_0x3a8e58){_0x59181e[_0x0a9e('0x23')](0x194);}return _0x3a8e58;};}function handleError(_0x33161b,_0x526cf3){_0x526cf3=_0x526cf3||0x1f4;return function(_0x384319){logger['error'](_0x384319[_0x0a9e('0x24')]);if(_0x384319['name']){delete _0x384319[_0x0a9e('0x25')];}_0x33161b[_0x0a9e('0x1a')](_0x526cf3)[_0x0a9e('0x26')](_0x384319);};}function getInteractionUsers(_0x14433c,_0x140511){return new BPromise(function(_0x1538a4,_0x11c3b6){try{if(_0x140511[_0x14433c['id']]){_0x14433c[_0x0a9e('0x27')]=_['map'](_0x140511[_0x14433c['id']],function(_0x3652a7){return{'id':_0x3652a7['id'],'fullname':_0x3652a7[_0x0a9e('0x28')]};});}}catch(_0x2b1f27){_0x11c3b6(_0x2b1f27);}_0x1538a4(_0x14433c);});}function getInteractionTags(_0x2ec755,_0x5c877d){return new BPromise(function(_0x15b200,_0x40e7a3){try{if(_0x2ec755[_0x0a9e('0x29')]){_0x2ec755[_0x0a9e('0x2a')]=[];_0x2ec755[_0x0a9e('0x29')][_0x0a9e('0x2b')](',')[_0x0a9e('0x2c')](function(_0x2e8759){_0x2ec755[_0x0a9e('0x2a')]['push'](_0x5c877d[_0x2e8759]);});}delete _0x2ec755[_0x0a9e('0x29')];}catch(_0x5d1e0e){_0x40e7a3(_0x5d1e0e);}_0x15b200(_0x2ec755);});}function getLastMessageText(_0x2407f9){return new BPromise(function(_0x3ae878,_0x1122db){return db[_0x0a9e('0x2d')][_0x0a9e('0x2e')]({'where':{'id':_0x2407f9['id']},'attributes':['lastMsgBody',_0x0a9e('0x2f')],'raw':!![]})[_0x0a9e('0x22')](function(_0x40cb85){if(!_0x40cb85[_0x0a9e('0x2f')]){_0x2407f9[_0x0a9e('0x2f')]=_[_0x0a9e('0x30')](htmlToText[_0x0a9e('0x31')](_0x40cb85[_0x0a9e('0x32')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]}));}else{_0x2407f9['lastMsgText']=_0x40cb85[_0x0a9e('0x2f')];}_0x3ae878(_0x2407f9);})['catch'](function(_0x2cc7a0){_0x1122db(_0x2cc7a0);});});}function updateMailInteraction(_0x14b13f,_0x2b7e7f,_0x3f3d41,_0x567193){return new BPromise(function(_0x191e91,_0xd1836d){return getInteractionUsers(_0x14b13f,_0x3f3d41)[_0x0a9e('0x22')](function(_0x15de0e){return getInteractionTags(_0x15de0e,_0x2b7e7f);})['then'](function(_0x54135e){if(_0x567193){_0x191e91(getLastMessageText(_0x54135e));}else{_0x191e91(_0x54135e);}})[_0x0a9e('0x33')](function(_0x5640eb){_0xd1836d(_0x5640eb);});});}exports[_0x0a9e('0x34')]=function(_0x3d9717,_0x381c37){var _0x1ef87a={},_0x4f41ae={},_0x31916f={'count':0x0,'rows':[]};var _0x3bfce8=_[_0x0a9e('0x35')](db['MailInteraction'][_0x0a9e('0x36')],function(_0x1a180b){return{'name':_0x1a180b[_0x0a9e('0x37')],'type':_0x1a180b['type']['key']};});_0x4f41ae[_0x0a9e('0x38')]=_[_0x0a9e('0x35')](_0x3bfce8,'name');_0x4f41ae[_0x0a9e('0x39')]=_[_0x0a9e('0x3a')](_0x3d9717[_0x0a9e('0x39')]);_0x4f41ae[_0x0a9e('0x3b')]=_['intersection'](_0x4f41ae['model'],_0x4f41ae[_0x0a9e('0x39')]);_0x1ef87a[_0x0a9e('0x3c')]=_['intersection'](_0x4f41ae[_0x0a9e('0x38')],qs[_0x0a9e('0x3d')](_0x3d9717[_0x0a9e('0x39')]['fields']));_0x1ef87a[_0x0a9e('0x3c')]=_0x1ef87a[_0x0a9e('0x3c')][_0x0a9e('0x3e')]?_0x1ef87a[_0x0a9e('0x3c')]:_0x4f41ae[_0x0a9e('0x38')];if(!_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x3f')](_0x0a9e('0x40'))){_0x1ef87a[_0x0a9e('0x1d')]=qs[_0x0a9e('0x1d')](_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x1d')]);_0x1ef87a[_0x0a9e('0x1c')]=qs[_0x0a9e('0x1c')](_0x3d9717[_0x0a9e('0x39')]['offset']);}_0x1ef87a['order']=qs[_0x0a9e('0x41')](_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x41')]);_0x1ef87a[_0x0a9e('0x42')]=qs[_0x0a9e('0x3b')](_[_0x0a9e('0x43')](_0x3d9717[_0x0a9e('0x39')],_0x4f41ae[_0x0a9e('0x3b')]),_0x3bfce8);var _0x432fcc=[];var _0x25c6e6=squel[_0x0a9e('0x44')]()[_0x0a9e('0x45')]('id')['field'](_0x0a9e('0x25'))[_0x0a9e('0x45')](_0x0a9e('0x46'))[_0x0a9e('0x47')](_0x0a9e('0x48'));var _0xbe9d19=squel[_0x0a9e('0x44')]()[_0x0a9e('0x45')]('u.id')[_0x0a9e('0x45')]('u.fullname')[_0x0a9e('0x45')](_0x0a9e('0x49'))[_0x0a9e('0x47')]('user_has_mail_interactions','ui')[_0x0a9e('0x4a')](_0x0a9e('0x4b'),'u',_0x0a9e('0x4c'));var _0x34aa5a=squel[_0x0a9e('0x44')]()[_0x0a9e('0x47')](_0x0a9e('0x4d'),'i')['left_join'](_0x0a9e('0x4e'),'c',_0x0a9e('0x4f'))[_0x0a9e('0x4a')](_0x0a9e('0x4b'),'o',_0x0a9e('0x50'))[_0x0a9e('0x4a')](_0x0a9e('0x51'),'a',_0x0a9e('0x52'))[_0x0a9e('0x4a')]('mail_messages','me',_0x0a9e('0x53'))[_0x0a9e('0x4a')]('mail_interaction_has_tags','it','it.MailInteractionId\x20=\x20i.id')['left_join'](_0x0a9e('0x48'),'t',_0x0a9e('0x54'));var _0x37edaa=squel[_0x0a9e('0x55')]();var _0x61bb17=[];var _0x30decb=squel[_0x0a9e('0x55')]();var _0x375c18;if(_0x3d9717['query']['search']){_0x375c18=as['parseSearch'](_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x56')]);var _0x14d602=_0x375c18['sqlOperator'];for(var _0x2b69d9=0x0;_0x2b69d9<_0x375c18[_0x0a9e('0x57')]['length'];_0x2b69d9++){var _0x5a88da=_0x375c18[_0x0a9e('0x57')][_0x2b69d9];var _0x59c6ff='i';var _0x443e72=_['find'](_0x3bfce8,[_0x0a9e('0x25'),_0x5a88da[_0x0a9e('0x45')]]);if(!_0x443e72){switch(_0x5a88da[_0x0a9e('0x45')]){case'unreadMessages':if(_0x5a88da[_0x0a9e('0x58')]==0x1){_0x34aa5a[_0x0a9e('0x59')]('`'+_0x5a88da['field']+'`\x20=\x200');}else{_0x34aa5a[_0x0a9e('0x59')]('`'+_0x5a88da[_0x0a9e('0x45')]+'`\x20>\x200');}break;case _0x0a9e('0x5a'):if(_0x5a88da['operator']===_0x0a9e('0x5b')){if(_0x5a88da['value'][_0x0a9e('0x2b')]('\x20')['length']>0x1){_0x37edaa[_0x14d602]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x5a88da[_0x0a9e('0x58')]),null);}else{var _0x47de4c='%'+_0x5a88da[_0x0a9e('0x58')]+'%';_0x37edaa[_0x14d602](_0x0a9e('0x5c'),_0x47de4c,_0x47de4c,_0x47de4c);}}else{_0x443e72=_[_0x0a9e('0x5d')](_0x3bfce8,[_0x0a9e('0x25'),_0x0a9e('0x5e')]);_0x5a88da[_0x0a9e('0x45')]=_0x0a9e('0x5e');_0x797b45=as[_0x0a9e('0x5f')](_0x59c6ff,_0x443e72['type'],_0x5a88da);_0x37edaa[_0x14d602](_0x797b45[_0x0a9e('0x60')],_0x797b45[_0x0a9e('0x58')][_0x0a9e('0x61')],_0x797b45[_0x0a9e('0x58')][_0x0a9e('0x62')]);}break;case _0x0a9e('0x63'):var _0x5d86e9=_0x5a88da[_0x0a9e('0x58')][_0x0a9e('0x2b')](',')['map'](function(_0x3649cc){return Number(_0x3649cc);});_0x5d86e9['forEach'](function(_0x20c668){_0x30decb['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x20c668+',%');});_0x61bb17=_['union'](_0x61bb17,_0x5d86e9);break;case'User':if(_0x5a88da[_0x0a9e('0x64')]==='$substring'){_0x37edaa[_0x14d602](_0x0a9e('0x65'),'%'+_0x5a88da[_0x0a9e('0x58')]+'%',null);}else{_0x443e72=_[_0x0a9e('0x5d')](_0x3bfce8,[_0x0a9e('0x25'),_0x0a9e('0x66')]);_0x5a88da[_0x0a9e('0x45')]='UserId';_0x797b45=as[_0x0a9e('0x5f')](_0x59c6ff,_0x443e72['type'],_0x5a88da);_0x37edaa[_0x14d602](_0x797b45[_0x0a9e('0x60')],_0x797b45[_0x0a9e('0x58')][_0x0a9e('0x61')],_0x797b45['value'][_0x0a9e('0x62')]);}break;case _0x0a9e('0x67'):_0x797b45=as[_0x0a9e('0x5f')]('me',null,_0x5a88da);_0x37edaa[_0x14d602](_0x797b45[_0x0a9e('0x60')],_0x797b45['value'][_0x0a9e('0x61')],_0x797b45[_0x0a9e('0x58')]['end']);break;}}else{var _0x797b45=as[_0x0a9e('0x5f')](_0x59c6ff,_0x443e72[_0x0a9e('0x68')],_0x5a88da);_0x37edaa[_0x14d602](_0x797b45[_0x0a9e('0x60')],_0x797b45[_0x0a9e('0x58')]['start'],_0x797b45[_0x0a9e('0x58')][_0x0a9e('0x62')]);}}}else{var _0x281c7d=_(_0x3d9717['query'])[_0x0a9e('0x3a')]()['map'](function(_0x5211e3){return _[_0x0a9e('0x69')](_0x3bfce8,[_0x0a9e('0x25'),_0x5211e3])?_0x5211e3:undefined;})[_0x0a9e('0x6a')]()[_0x0a9e('0x58')]();if(!_[_0x0a9e('0x6b')](_0x281c7d)){_0x281c7d[_0x0a9e('0x2c')](function(_0x387489){if(_0x387489===_0x0a9e('0x6c')){_0x34aa5a[_0x0a9e('0x42')](_0x0a9e('0x6d'),[][_0x0a9e('0x6e')](_0x3d9717[_0x0a9e('0x39')][_0x387489]));}else if(_0x387489===_0x0a9e('0x6f')){var _0x2b8192=JSON[_0x0a9e('0x70')](_0x3d9717[_0x0a9e('0x39')][_0x387489])[_0x0a9e('0x71')];var _0x4257c9=JSON['parse'](_0x3d9717[_0x0a9e('0x39')][_0x387489])[_0x0a9e('0x72')];_0x34aa5a[_0x0a9e('0x42')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x2b8192,_0x4257c9);}else{if(_0x3d9717[_0x0a9e('0x39')][_0x387489]===_0x0a9e('0x73')){_0x34aa5a['where']('i.'+_0x387489+_0x0a9e('0x74'));}else{_0x34aa5a[_0x0a9e('0x42')]('i.'+_0x387489+_0x0a9e('0x75'),_0x3d9717[_0x0a9e('0x39')][_0x387489]);}}});}if(_0x3d9717[_0x0a9e('0x39')]['read']){if(_0x3d9717['query']['read']==0x1){_0x34aa5a[_0x0a9e('0x59')](_0x0a9e('0x76'));}else{_0x34aa5a[_0x0a9e('0x59')](_0x0a9e('0x77'));}}if(_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x78')]){_0x61bb17=_[_0x0a9e('0x79')](_0x3d9717[_0x0a9e('0x39')]['tag'])?_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x78')]:new Array(_0x3d9717[_0x0a9e('0x39')]['tag']);_0x61bb17[_0x0a9e('0x2c')](function(_0x583b2e){_0x30decb['or'](_0x0a9e('0x7a'),'%,'+_0x583b2e+',%');});}if(_0x3d9717[_0x0a9e('0x39')]['filter']){var _0x2ed01e=_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x7b')][_0x0a9e('0x7c')]('\x5c','\x5c\x5c')['replace']('\x27\x27',_0x0a9e('0x7d'));if(qs[_0x0a9e('0x7e')](_0x2ed01e)){_0x37edaa['or'](_0x0a9e('0x7f'),_0x2ed01e+'%');}else if(qs[_0x0a9e('0x80')](_0x2ed01e)){_0x37edaa['or']('c.email\x20LIKE\x20?',_0x2ed01e+'%');}else{_0x37edaa['or'](_0x0a9e('0x81'),qs[_0x0a9e('0x82')](_0x2ed01e))['or'](_0x0a9e('0x83'),qs[_0x0a9e('0x82')](_0x2ed01e));}}}_0x34aa5a['where'](_0x37edaa);_0x34aa5a[_0x0a9e('0x84')](_0x0a9e('0x85'));var _0x30a4c7={'type':db[_0x0a9e('0x86')][_0x0a9e('0x87')][_0x0a9e('0x88')],'raw':!![]};var _0x40fc56=_0x34aa5a[_0x0a9e('0x89')]();_0x40fc56[_0x0a9e('0x45')](_0x0a9e('0x85'));_0x40fc56[_0x0a9e('0x45')](_0x0a9e('0x8a'),_0x0a9e('0x8b'));if(_0x1ef87a[_0x0a9e('0x8c')]){_0x1ef87a['order'][_0x0a9e('0x2c')](function(_0x11da9c){_0x34aa5a[_0x0a9e('0x8c')]('i.'+_0x11da9c[0x0],_0x11da9c[0x1]==='DESC'?![]:!![]);});}if(!_[_0x0a9e('0x6b')](_0x61bb17)){_0x34aa5a[_0x0a9e('0x59')](_0x30decb);_0x40fc56[_0x0a9e('0x42')](_0x0a9e('0x8d'),_0x61bb17);}BPromise['resolve']()['then'](function(){if(!_0x375c18){if(_0x3d9717[_0x0a9e('0x39')][_0x0a9e('0x6c')]||_0x3d9717['query'][_0x0a9e('0x8e')])return;_0x40fc56['where'](_0x0a9e('0x8f'));_0x34aa5a[_0x0a9e('0x42')]('i.MailAccountId\x20IS\x20NOT\x20NULL');return;}return _0x3d9717[_0x0a9e('0x90')][_0x0a9e('0x91')]({'attributes':['id'],'raw':!![]})[_0x0a9e('0x22')](function(_0x42b959){if(_[_0x0a9e('0x6b')](_0x42b959)){_0x40fc56[_0x0a9e('0x42')](_0x0a9e('0x92'));_0x34aa5a['where'](_0x0a9e('0x92'));}else{_0x40fc56[_0x0a9e('0x42')](_0x0a9e('0x6d'),_[_0x0a9e('0x35')](_0x42b959,'id'));_0x34aa5a['where'](_0x0a9e('0x6d'),_[_0x0a9e('0x35')](_0x42b959,'id'));}});})['then'](function(){db[_0x0a9e('0x93')]['query'](_0x40fc56[_0x0a9e('0x94')](),_0x30a4c7)[_0x0a9e('0x22')](function(_0x3003eb){_0x31916f[_0x0a9e('0x1b')]=_0x3003eb['length'];if(_0x31916f['count']===0x0)return[];return db[_0x0a9e('0x93')][_0x0a9e('0x39')](_0x25c6e6[_0x0a9e('0x94')](),_0x30a4c7)['then'](function(_0x3b4a9f){_0x432fcc=_[_0x0a9e('0x95')](_0x3b4a9f,'id');_0x30a4c7=_['merge'](_0x30a4c7,{'model':db['MailInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3d9717[_0x0a9e('0x39')]['fields']){_0x1ef87a['attributes']['forEach'](function(_0x81d748){_0x34aa5a[_0x0a9e('0x45')]('i.'+_0x81d748);});}else{_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x8a'),_0x0a9e('0x8b'));_0x34aa5a[_0x0a9e('0x45')]('a.key',_0x0a9e('0x96'));_0x34aa5a['field'](_0x0a9e('0x97'),_0x0a9e('0x98'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x85'));_0x34aa5a['field'](_0x0a9e('0x99'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x9a'));_0x34aa5a['field'](_0x0a9e('0x9b'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x9c'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x9d'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x9e'));_0x34aa5a[_0x0a9e('0x45')]('i.lastMsgDirection');_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0x9f'));_0x34aa5a['field'](_0x0a9e('0xa0'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xa1'));_0x34aa5a['field'](_0x0a9e('0xa2'));_0x34aa5a['field'](_0x0a9e('0xa3'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xa4'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xa5'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xa6'),_0x0a9e('0xa7'));_0x34aa5a['field'](_0x0a9e('0xa8'),_0x0a9e('0xa9'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xaa'),_0x0a9e('0xab'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xac'),_0x0a9e('0xad'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xae'),_0x0a9e('0xaf'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xb0'),'Contact.fax');_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xb1'),_0x0a9e('0xb2'));_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xb3'),'Owner.internal');_0x34aa5a[_0x0a9e('0x45')](_0x0a9e('0xb4'),'TagIds');}if(_0x1ef87a[_0x0a9e('0x1d')])_0x34aa5a['limit'](_0x1ef87a[_0x0a9e('0x1d')]);if(_0x1ef87a[_0x0a9e('0x1c')])_0x34aa5a[_0x0a9e('0x1c')](_0x1ef87a[_0x0a9e('0x1c')]);return db['sequelize'][_0x0a9e('0x39')](_0x34aa5a['toString'](),_0x30a4c7);})[_0x0a9e('0x22')](function(_0x3d0a77){_0xbe9d19['where'](_0x0a9e('0xb5'),_[_0x0a9e('0x35')](_0x3d0a77,'id'));return db[_0x0a9e('0x93')]['query'](_0xbe9d19['toString'](),_0x30a4c7)[_0x0a9e('0x22')](function(_0x6ba2be){var _0x1707dc=_[_0x0a9e('0xb6')](_0x6ba2be,_0x0a9e('0xb7'));var _0x2450a8=[];return db[_0x0a9e('0xb8')][_0x0a9e('0x2e')]({'attributes':[_0x0a9e('0xb9')],'raw':!![]})['then'](function(_0x3156c7){var _0x517081=_0x3156c7[_0x0a9e('0xb9')];_0x3d0a77[_0x0a9e('0x2c')](function(_0x34e745){_0x2450a8[_0x0a9e('0xba')](updateMailInteraction(_0x34e745,_0x432fcc,_0x1707dc,_0x517081));});return BPromise[_0x0a9e('0xbb')](_0x2450a8);});});});})['then'](function(_0x436313){_0x31916f[_0x0a9e('0xbc')]=_0x436313;return _0x31916f;})[_0x0a9e('0x22')](respondWithFilteredResult(_0x381c37,_0x1ef87a));})[_0x0a9e('0x33')](handleError(_0x381c37,null));};exports[_0x0a9e('0xbd')]=function(_0x5c66ef,_0x4f074c){var _0x22a3cb={'raw':![],'where':{'id':_0x5c66ef[_0x0a9e('0xbe')]['id']}},_0x583662={};_0x583662[_0x0a9e('0x38')]=_[_0x0a9e('0x3a')](db[_0x0a9e('0x2d')][_0x0a9e('0x36')]);_0x583662[_0x0a9e('0x39')]=_['keys'](_0x5c66ef['query']);_0x583662[_0x0a9e('0x3b')]=_['intersection'](_0x583662[_0x0a9e('0x38')],_0x583662['query']);_0x22a3cb[_0x0a9e('0x3c')]=_['intersection'](_0x583662['model'],qs[_0x0a9e('0x3d')](_0x5c66ef[_0x0a9e('0x39')]['fields']));_0x22a3cb[_0x0a9e('0x3c')]=_0x22a3cb[_0x0a9e('0x3c')][_0x0a9e('0x3e')]?_0x22a3cb[_0x0a9e('0x3c')]:_0x583662[_0x0a9e('0x38')];if(_0x5c66ef['query']['includeAll']){_0x22a3cb[_0x0a9e('0xbf')]=[{'all':!![]}];}_0x22a3cb=_[_0x0a9e('0xc0')]({},_0x22a3cb,_0x5c66ef[_0x0a9e('0xc1')]);return db[_0x0a9e('0x2d')][_0x0a9e('0x5d')](_0x22a3cb)['then'](handleEntityNotFound(_0x4f074c,null))[_0x0a9e('0x22')](respondWithResult(_0x4f074c,null))[_0x0a9e('0x33')](handleError(_0x4f074c,null));};exports['create']=function(_0x3c313d,_0x19fd11){return db[_0x0a9e('0x2d')][_0x0a9e('0xc2')](_0x3c313d[_0x0a9e('0xc3')],{})[_0x0a9e('0x22')](respondWithResult(_0x19fd11,0xc9))[_0x0a9e('0x33')](handleError(_0x19fd11,null));};exports[_0x0a9e('0x20')]=function(_0x40dd2a,_0x16afb3){if(_0x40dd2a['body']['id']){delete _0x40dd2a[_0x0a9e('0xc3')]['id'];}return db[_0x0a9e('0x2d')][_0x0a9e('0x5d')]({'where':{'id':_0x40dd2a[_0x0a9e('0xbe')]['id']}})[_0x0a9e('0x22')](handleEntityNotFound(_0x16afb3,null))['then'](saveUpdates(_0x40dd2a['body'],null))[_0x0a9e('0x22')](respondWithResult(_0x16afb3,null))[_0x0a9e('0x33')](handleError(_0x16afb3,null));};exports[_0x0a9e('0x21')]=function(_0x2fea95,_0x34f7b5){return db['MailInteraction'][_0x0a9e('0x5d')]({'where':{'id':_0x2fea95[_0x0a9e('0xbe')]['id']}})[_0x0a9e('0x22')](handleEntityNotFound(_0x34f7b5,null))['then'](removeEntity(_0x34f7b5,null))[_0x0a9e('0x33')](handleError(_0x34f7b5,null));};exports['describe']=function(_0x2144ca,_0x4799d4){return db[_0x0a9e('0x2d')][_0x0a9e('0xc4')]()[_0x0a9e('0x22')](respondWithResult(_0x4799d4,null))['catch'](handleError(_0x4799d4,null));};exports[_0x0a9e('0xc5')]=function(_0x5ed560,_0x4383da,_0x2b1824){return db[_0x0a9e('0xc6')][_0x0a9e('0x5d')]({'where':{'id':_0x5ed560[_0x0a9e('0xbe')]['id']}})[_0x0a9e('0x22')](handleEntityNotFound(_0x4383da,null))[_0x0a9e('0x22')](function(_0xe89aaa){if(_0xe89aaa){return _0xe89aaa[_0x0a9e('0xc5')](_0x5ed560[_0x0a9e('0xc3')][_0x0a9e('0xc7')],_[_0x0a9e('0xc8')](_0x5ed560[_0x0a9e('0xc3')],[_0x0a9e('0xc7'),'id'])||{});}})[_0x0a9e('0x22')](respondWithResult(_0x4383da,null))[_0x0a9e('0x33')](handleError(_0x4383da,null));};exports['getMessages']=function(_0x556443,_0x6eaaf0,_0x5c4be0){var _0x1d999b={'raw':![],'where':{}};var _0x3428c9={};var _0x5d6b69={'count':0x0,'rows':[]};return db[_0x0a9e('0x2d')][_0x0a9e('0x2e')]({'where':{'id':_0x556443[_0x0a9e('0xbe')]['id']}})[_0x0a9e('0x22')](handleEntityNotFound(_0x6eaaf0,null))['then'](function(_0x148fd9){if(_0x148fd9){_0x3428c9[_0x0a9e('0x38')]=_[_0x0a9e('0x3a')](db[_0x0a9e('0xc6')]['rawAttributes']);_0x3428c9[_0x0a9e('0x39')]=_[_0x0a9e('0x3a')](_0x556443[_0x0a9e('0x39')]);_0x3428c9['filters']=_[_0x0a9e('0xc9')](_0x3428c9[_0x0a9e('0x38')],_0x3428c9[_0x0a9e('0x39')]);_0x1d999b['attributes']=_[_0x0a9e('0xc9')](_0x3428c9[_0x0a9e('0x38')],qs[_0x0a9e('0x3d')](_0x556443[_0x0a9e('0x39')][_0x0a9e('0x3d')]));_0x1d999b['attributes']=_0x1d999b[_0x0a9e('0x3c')][_0x0a9e('0x3e')]?_0x1d999b['attributes']:_0x3428c9[_0x0a9e('0x38')];if(!_0x556443[_0x0a9e('0x39')][_0x0a9e('0x3f')]('nolimit')){_0x1d999b['limit']=qs['limit'](_0x556443[_0x0a9e('0x39')][_0x0a9e('0x1d')]);_0x1d999b['offset']=qs[_0x0a9e('0x1c')](_0x556443[_0x0a9e('0x39')][_0x0a9e('0x1c')]);}_0x1d999b['order']=qs[_0x0a9e('0x41')](_0x556443[_0x0a9e('0x39')][_0x0a9e('0x41')]);_0x1d999b[_0x0a9e('0x42')]=qs[_0x0a9e('0x3b')](_[_0x0a9e('0x43')](_0x556443[_0x0a9e('0x39')],_0x3428c9[_0x0a9e('0x3b')]));_0x1d999b[_0x0a9e('0x42')]['MailInteractionId']=_0x148fd9['id'];if(_0x556443[_0x0a9e('0x39')]['filter']){_0x1d999b[_0x0a9e('0x42')]=_[_0x0a9e('0xc0')](_0x1d999b[_0x0a9e('0x42')],{'$or':_[_0x0a9e('0x35')](_0x1d999b[_0x0a9e('0x3c')],function(_0x344cd4){var _0x53d9fc={};_0x53d9fc[_0x344cd4]={'$like':'%'+_0x556443[_0x0a9e('0x39')][_0x0a9e('0x7b')]+'%'};return _0x53d9fc;})});}if(_0x556443[_0x0a9e('0x39')][_0x0a9e('0x71')]){var _0x51aa2f=_0x556443[_0x0a9e('0x39')][_0x0a9e('0x71')][_0x0a9e('0x2b')](',');var _0x1c9539={};_0x1c9539[_0x51aa2f[0x0]]={'$gte':moment(_0x51aa2f[0x1])[_0x0a9e('0xca')](_0x0a9e('0xcb'))};_0x1d999b[_0x0a9e('0x42')]=_[_0x0a9e('0xc0')](_0x1d999b[_0x0a9e('0x42')],_0x1c9539);}_0x1d999b=_[_0x0a9e('0xc0')]({},_0x1d999b,_0x556443['options']);return db[_0x0a9e('0xc6')][_0x0a9e('0x1b')]({'where':_0x1d999b[_0x0a9e('0x42')]})[_0x0a9e('0x22')](function(_0xea8bd1){_0x5d6b69[_0x0a9e('0x1b')]=_0xea8bd1;if(_0x556443[_0x0a9e('0x39')][_0x0a9e('0xcc')]){_0x1d999b['include']=[{'all':!![]}];}return db[_0x0a9e('0xc6')][_0x0a9e('0xcd')](_0x1d999b);})[_0x0a9e('0x22')](function(_0x5c65fc){_0x5d6b69[_0x0a9e('0xbc')]=_0x5c65fc;return _0x5d6b69;});}})[_0x0a9e('0x22')](respondWithFilteredResult(_0x6eaaf0,_0x1d999b))[_0x0a9e('0x33')](handleError(_0x6eaaf0,null));};exports[_0x0a9e('0xce')]=function(_0x370b5e,_0x1ba457,_0x424f1b){return db[_0x0a9e('0x2d')][_0x0a9e('0x5d')]({'where':{'id':_0x370b5e[_0x0a9e('0xbe')]['id']}})['then'](handleEntityNotFound(_0x1ba457,null))[_0x0a9e('0x22')](function(_0x446e6){if(_0x446e6){return _0x446e6[_0x0a9e('0xcf')](_0x370b5e[_0x0a9e('0xc3')][_0x0a9e('0xc7')],_[_0x0a9e('0xc8')](_0x370b5e['body'],[_0x0a9e('0xc7'),'id'])||{})['spread'](function(){return db['Tag']['findAll']({'attributes':['id',_0x0a9e('0x25'),_0x0a9e('0x46')],'where':{'id':_0x370b5e[_0x0a9e('0xc3')][_0x0a9e('0xc7')]}});})['then'](function(_0x4156a5){socket[_0x0a9e('0xd0')](_0x0a9e('0xd1'),{'id':Number(_0x370b5e[_0x0a9e('0xbe')]['id']),'tags':_0x4156a5||[]});return{'id':Number(_0x370b5e[_0x0a9e('0xbe')]['id']),'tags':_0x4156a5||[]};});}})['then'](respondWithResult(_0x1ba457,null))['catch'](handleError(_0x1ba457,null));};exports[_0x0a9e('0xd2')]=function(_0x33bcb2,_0x2a293f,_0x5e85d0){return db[_0x0a9e('0x2d')][_0x0a9e('0x5d')]({'where':{'id':_0x33bcb2[_0x0a9e('0xbe')]['id']}})['then'](handleEntityNotFound(_0x2a293f,null))[_0x0a9e('0x22')](function(_0x2bf85d){if(_0x2bf85d){return _0x2bf85d[_0x0a9e('0xd2')](_0x33bcb2['query'][_0x0a9e('0xc7')]);}})[_0x0a9e('0x22')](respondWithStatusCode(_0x2a293f,null))[_0x0a9e('0x33')](handleError(_0x2a293f,null));};exports['download']=function(_0x549697,_0x53ef46){var _0x3b04fd=moment()[_0x0a9e('0xd3')]()[_0x0a9e('0x94')]();var _0x26931c=path['join'](config[_0x0a9e('0xd4')],'server',_0x0a9e('0xd5'),_0x0a9e('0xd6'));var _0x242f23=path['join'](config[_0x0a9e('0xd4')],_0x0a9e('0xd7'),_0x0a9e('0xd5'),'attachments');var _0x40eb5d=path['join'](_0x26931c,_0x3b04fd);var _0x1b637c=util['format'](_0x0a9e('0xd8'),_0x549697['params']['id'],_0x3b04fd);var _0xb14971=path[_0x0a9e('0xd9')](_0x26931c,_0x1b637c);var _0xa288e4=[];if(_0x549697[_0x0a9e('0x39')][_0x0a9e('0xda')]){_0xa288e4[_0x0a9e('0xba')]({'model':db[_0x0a9e('0xdb')],'as':'Attachments','raw':!![]});}var _0x35ace3=[{'model':db[_0x0a9e('0xc6')],'as':'Messages','attributes':['id',_0x0a9e('0xc3'),_0x0a9e('0x47'),'to','cc','bcc',_0x0a9e('0xdc'),_0x0a9e('0x6f')],'where':{'secret':![]},'order':qs[_0x0a9e('0x41')]('id'),'include':_0xa288e4}];return db['MailInteraction'][_0x0a9e('0x5d')]({'where':{'id':_0x549697[_0x0a9e('0xbe')]['id']},'include':_0x35ace3})[_0x0a9e('0x22')](handleEntityNotFound(_0x53ef46,null))[_0x0a9e('0x22')](function(_0x2003bc){if(_0x2003bc&&_0x2003bc[_0x0a9e('0xdd')]){var _0x3ba897=_0x2003bc[_0x0a9e('0xde')]({'plain':!![]});fs[_0x0a9e('0xdf')](_0x40eb5d);return BPromise[_0x0a9e('0xe0')](_0x3ba897['Messages'],function(_0x1799d8,_0x53c7de){var _0x3c9854={'from':_0x1799d8[_0x0a9e('0x47')],'to':_0x1799d8['to'],'subject':_0x1799d8[_0x0a9e('0xdc')],'html':_0x1799d8[_0x0a9e('0xc3')],'headers':{'Date':moment(_0x1799d8[_0x0a9e('0x6f')])[_0x0a9e('0xca')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x1799d8['cc']){_0x3c9854[_0x0a9e('0xe1')]['Cc']=_0x1799d8['cc'];}if(_0x1799d8[_0x0a9e('0xe2')]){_0x3c9854[_0x0a9e('0xe1')]['Bcc']=_0x1799d8[_0x0a9e('0xe2')];}return new BPromise(function(_0x402544,_0x4435d2){if(_0x1799d8[_0x0a9e('0xe3')]){for(var _0x31e1e0=0x0;_0x31e1e0<_0x1799d8[_0x0a9e('0xe3')][_0x0a9e('0x3e')];_0x31e1e0++){var _0x5f2c51=_0x1799d8[_0x0a9e('0xe3')][_0x31e1e0];var _0x228c10=path[_0x0a9e('0xd9')](_0x242f23,_0x5f2c51[_0x0a9e('0xe4')]);if(fs[_0x0a9e('0xe5')](_0x228c10)){_0x3c9854[_0x0a9e('0xda')][_0x0a9e('0xba')]({'name':_0x5f2c51['name'],'contentType':_0x5f2c51['type'],'data':fs[_0x0a9e('0xe6')](_0x228c10)});}}}emlformat[_0x0a9e('0xe7')](_0x3c9854,function(_0x1f4929,_0x1bf692){if(_0x1f4929)return _0x4435d2(_0x1f4929);fs[_0x0a9e('0xe8')](path[_0x0a9e('0xd9')](_0x40eb5d,util[_0x0a9e('0xca')]('message%d.eml',_0x53c7de)),_0x1bf692);return _0x402544(_0x1bf692);});});})[_0x0a9e('0x22')](function(){return new BPromise(function(_0x1d7fc4,_0x2d8e91){zipdir(_0x40eb5d,{'saveTo':_0xb14971},function(_0x2675a5,_0x1b1757){if(_0x2675a5)return _0x2d8e91(_0x2675a5);return _0x1d7fc4(_0x1b1757);});})[_0x0a9e('0x22')](function(){return new BPromise(function(_0x16be7e,_0x54f0b8){rimraf(_0x40eb5d,function(_0x311288){if(_0x311288)_0x54f0b8(_0x311288);return _0x16be7e();});});})[_0x0a9e('0x22')](function(){return _0x53ef46[_0x0a9e('0xe9')](_0xb14971,_0x1b637c,function(_0x5885c3){if(_0x5885c3){console[_0x0a9e('0xea')](_0x0a9e('0xeb'),_0x5885c3);}else{fs[_0x0a9e('0xec')](_0xb14971);}});});});}else{return _0x53ef46[_0x0a9e('0x23')](0xc8);}})['catch'](handleError(_0x53ef46,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