Built motion from commit 0900f080.|2.5.45
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index fe57f57..42bbbac 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3edb=['isNumeric','isEmail','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','Sequelize','SELECT','clone','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','isEmpty','t.id\x20IN\x20?','resolve','role','i.MailAccountId\x20IS\x20NULL','user','agent','sequelize','toString','a.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.createdAt','i.updatedAt','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.thirdDisposition','i.substatus','i.to','i.ContactId','i.UserId','c.firstName','Contact.firstName','Contact.lastName','c.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy','Setting','enableEmailPreview','push','all','rows','show','params','keys','include','options','create','body','describe','addMessage','MailMessage','ids','getMessages','hasOwnProperty','MailInteractionId','merge','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','inlineCss','true','addTags','spread','Tag','emit','mailInteractionTags:save','removeTags','download','join','root','server','files','transcript-%d-%s.zip','attachments','Attachment','Attachments','bcc','subject','Messages','each','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','writeFileSync','message%d.eml','err','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','ejs','fs-extra','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','sendStatus','end','status','json','count','Content-Range','apply','reject','save','update','destroy','error','name','send','Users','map','TagIds','Tags','split','forEach','findOne','out','plainBody','then','lastMsgText','trimStart','catch','MailInteraction','rawAttributes','fieldName','type','key','model','query','filters','intersection','fields','attributes','length','nolimit','limit','offset','order','sort','where','pick','field','color','from','tools_tags','select','u.fullname','ui.MailInteractionId','users','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','left_join','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','search','sqlOperator','conditions','value','having','`\x20>\x200','operator','$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','text','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','start','some','compact','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20=\x20?','read','`unreadMessages`\x20=\x200','tag','isArray','filter','replace'];(function(_0x191154,_0x56f74c){var _0x3dcd73=function(_0x51c321){while(--_0x51c321){_0x191154['push'](_0x191154['shift']());}};_0x3dcd73(++_0x56f74c);}(_0x3edb,0x15d));var _0xb3ed=function(_0x4243a3,_0x447337){_0x4243a3=_0x4243a3-0x0;var _0x1b2a33=_0x3edb[_0x4243a3];return _0x1b2a33;};'use strict';var emlformat=require(_0xb3ed('0x0'));var rimraf=require(_0xb3ed('0x1'));var zipdir=require(_0xb3ed('0x2'));var jsonpatch=require(_0xb3ed('0x3'));var rp=require('request-promise');var moment=require(_0xb3ed('0x4'));var BPromise=require(_0xb3ed('0x5'));var Mustache=require(_0xb3ed('0x6'));var util=require(_0xb3ed('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xb3ed('0x8'));var fs=require('fs');var fs_extra=require(_0xb3ed('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xb3ed('0xa'));var jsforce=require(_0xb3ed('0xb'));var deskjs=require(_0xb3ed('0xc'));var toCsv=require(_0xb3ed('0xd'));var querystring=require(_0xb3ed('0xe'));var Papa=require(_0xb3ed('0xf'));var htmlToText=require('html-to-text');var juice=require('juice');var Redis=require(_0xb3ed('0x10'));var authService=require(_0xb3ed('0x11'));var qs=require(_0xb3ed('0x12'));var as=require(_0xb3ed('0x13'));var hardwareService=require(_0xb3ed('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0xb3ed('0x15'));var config=require(_0xb3ed('0x16'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0xb3ed('0x17')]=_[_0xb3ed('0x18')](config[_0xb3ed('0x17')],{'host':_0xb3ed('0x19'),'port':0x18eb});var socket=require(_0xb3ed('0x1a'))(new Redis(config['redis']));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x25aac0,_0x38ef1b){_0x38ef1b=_0x38ef1b||0xcc;return function(_0xb311d3){if(_0xb311d3){return _0x25aac0[_0xb3ed('0x1b')](_0x38ef1b);}return _0x25aac0['status'](_0x38ef1b)[_0xb3ed('0x1c')]();};}function respondWithResult(_0x531ee4,_0x274b9a){_0x274b9a=_0x274b9a||0xc8;return function(_0x69d01d){if(_0x69d01d){return _0x531ee4[_0xb3ed('0x1d')](_0x274b9a)[_0xb3ed('0x1e')](_0x69d01d);}};}function respondWithFilteredResult(_0x8134e6,_0x41ff57){return function(_0x339f9e){if(_0x339f9e){var _0x376248=_0x339f9e[_0xb3ed('0x1f')],_0x2bdd89=_0x41ff57['offset'],_0x376cf7=_0x41ff57['offset']+_0x41ff57['limit'],_0x2871fb;if(_0x376cf7>=_0x376248){_0x376cf7=_0x376248;_0x2871fb=0xc8;}else{_0x2871fb=0xce;}_0x8134e6[_0xb3ed('0x1d')](_0x2871fb);return _0x8134e6['set'](_0xb3ed('0x20'),_0x2bdd89+'-'+_0x376cf7+'/'+_0x376248)[_0xb3ed('0x1e')](_0x339f9e);}return null;};}function patchUpdates(_0x328498){return function(_0x5aa24e){try{jsonpatch[_0xb3ed('0x21')](_0x5aa24e,_0x328498,!![]);}catch(_0x941116){return BPromise[_0xb3ed('0x22')](_0x941116);}return _0x5aa24e[_0xb3ed('0x23')]();};}function saveUpdates(_0x274f9a,_0xbe3dc8){return function(_0x313b99){if(_0x313b99){return _0x313b99[_0xb3ed('0x24')](_0x274f9a)['then'](function(_0x217096){return _0x217096;});}return null;};}function removeEntity(_0x1cd1c2,_0x2f838e){return function(_0x596c6b){if(_0x596c6b){return _0x596c6b[_0xb3ed('0x25')]()['then'](function(){_0x1cd1c2[_0xb3ed('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3f62cb,_0x3566ca){return function(_0x518ff5){if(!_0x518ff5){_0x3f62cb[_0xb3ed('0x1b')](0x194);}return _0x518ff5;};}function handleError(_0x5a85a7,_0x2e440c){_0x2e440c=_0x2e440c||0x1f4;return function(_0x29acd5){logger[_0xb3ed('0x26')](_0x29acd5['stack']);if(_0x29acd5[_0xb3ed('0x27')]){delete _0x29acd5[_0xb3ed('0x27')];}_0x5a85a7['status'](_0x2e440c)[_0xb3ed('0x28')](_0x29acd5);};}function getInteractionUsers(_0x3c54b6,_0x141df5){return new BPromise(function(_0x268dab,_0x32da11){try{if(_0x141df5[_0x3c54b6['id']]){_0x3c54b6[_0xb3ed('0x29')]=_[_0xb3ed('0x2a')](_0x141df5[_0x3c54b6['id']],function(_0x595a63){return{'id':_0x595a63['id'],'fullname':_0x595a63['fullname']};});}}catch(_0xd4b982){_0x32da11(_0xd4b982);}_0x268dab(_0x3c54b6);});}function getInteractionTags(_0x99c0a1,_0x32b69a){return new BPromise(function(_0x5db953,_0x833945){try{if(_0x99c0a1[_0xb3ed('0x2b')]){_0x99c0a1[_0xb3ed('0x2c')]=[];_0x99c0a1[_0xb3ed('0x2b')][_0xb3ed('0x2d')](',')[_0xb3ed('0x2e')](function(_0x311396){_0x99c0a1[_0xb3ed('0x2c')]['push'](_0x32b69a[_0x311396]);});}delete _0x99c0a1[_0xb3ed('0x2b')];}catch(_0x230fa8){_0x833945(_0x230fa8);}_0x5db953(_0x99c0a1);});}function getLastMessageText(_0x16b84d){return new BPromise(function(_0x5e4325,_0x3cea59){return db['MailMessage'][_0xb3ed('0x2f')]({'where':{'$and':[{'MailInteractionId':_0x16b84d['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xb3ed('0x30')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xb3ed('0x31')],'order':'-id','raw':!![]})[_0xb3ed('0x32')](function(_0x1663bc){if(_0x1663bc&&_0x1663bc[_0xb3ed('0x31')]){_0x16b84d[_0xb3ed('0x33')]=_[_0xb3ed('0x34')](_0x1663bc[_0xb3ed('0x31')]);}_0x5e4325(_0x16b84d);})[_0xb3ed('0x35')](function(_0x1442ae){_0x3cea59(_0x1442ae);});});}function updateMailInteraction(_0x41106f,_0x1fca20,_0x51cbbc,_0x2020ef){return new BPromise(function(_0x43692c,_0x2bf5f8){return getInteractionUsers(_0x41106f,_0x51cbbc)[_0xb3ed('0x32')](function(_0x5d4a05){return getInteractionTags(_0x5d4a05,_0x1fca20);})['then'](function(_0x1844c6){if(_0x2020ef){_0x43692c(getLastMessageText(_0x1844c6));}else{_0x43692c(_0x1844c6);}})[_0xb3ed('0x35')](function(_0x5293f2){_0x2bf5f8(_0x5293f2);});});}exports['index']=function(_0x31a924,_0x2f06c0){var _0x50a509={},_0x305e1f={},_0x3b2d61={'count':0x0,'rows':[]};var _0x1c96b1=_[_0xb3ed('0x2a')](db[_0xb3ed('0x36')][_0xb3ed('0x37')],function(_0x10959e){return{'name':_0x10959e[_0xb3ed('0x38')],'type':_0x10959e[_0xb3ed('0x39')][_0xb3ed('0x3a')]};});_0x305e1f[_0xb3ed('0x3b')]=_[_0xb3ed('0x2a')](_0x1c96b1,_0xb3ed('0x27'));_0x305e1f[_0xb3ed('0x3c')]=_['keys'](_0x31a924[_0xb3ed('0x3c')]);_0x305e1f[_0xb3ed('0x3d')]=_[_0xb3ed('0x3e')](_0x305e1f['model'],_0x305e1f[_0xb3ed('0x3c')]);_0x50a509['attributes']=_[_0xb3ed('0x3e')](_0x305e1f[_0xb3ed('0x3b')],qs[_0xb3ed('0x3f')](_0x31a924['query'][_0xb3ed('0x3f')]));_0x50a509[_0xb3ed('0x40')]=_0x50a509[_0xb3ed('0x40')][_0xb3ed('0x41')]?_0x50a509[_0xb3ed('0x40')]:_0x305e1f[_0xb3ed('0x3b')];if(!_0x31a924[_0xb3ed('0x3c')]['hasOwnProperty'](_0xb3ed('0x42'))){_0x50a509[_0xb3ed('0x43')]=qs[_0xb3ed('0x43')](_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x43')]);_0x50a509[_0xb3ed('0x44')]=qs[_0xb3ed('0x44')](_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x44')]);}_0x50a509[_0xb3ed('0x45')]=qs[_0xb3ed('0x46')](_0x31a924[_0xb3ed('0x3c')]['sort']);_0x50a509[_0xb3ed('0x47')]=qs['filters'](_[_0xb3ed('0x48')](_0x31a924['query'],_0x305e1f['filters']),_0x1c96b1);var _0xcf646e=[];var _0x2a55bf=squel['select']()['field']('id')[_0xb3ed('0x49')]('name')[_0xb3ed('0x49')](_0xb3ed('0x4a'))[_0xb3ed('0x4b')](_0xb3ed('0x4c'));var _0x903f4d=squel[_0xb3ed('0x4d')]()['field']('u.id')[_0xb3ed('0x49')](_0xb3ed('0x4e'))[_0xb3ed('0x49')](_0xb3ed('0x4f'))[_0xb3ed('0x4b')]('user_has_mail_interactions','ui')['left_join'](_0xb3ed('0x50'),'u','u.id\x20=\x20ui.UserId');var _0x1e0fdd=squel['select']()[_0xb3ed('0x4b')](_0xb3ed('0x51'),'i')['left_join'](_0xb3ed('0x52'),'c',_0xb3ed('0x53'))['left_join'](_0xb3ed('0x50'),'o','o.id\x20=\x20i.UserId')[_0xb3ed('0x54')](_0xb3ed('0x55'),'a',_0xb3ed('0x56'))[_0xb3ed('0x54')](_0xb3ed('0x57'),'me',_0xb3ed('0x58'))['left_join'](_0xb3ed('0x59'),'it',_0xb3ed('0x5a'))['left_join']('tools_tags','t',_0xb3ed('0x5b'));var _0x2a560e=squel[_0xb3ed('0x5c')]();var _0x28fc79=[];var _0x543e4c=squel[_0xb3ed('0x5c')]();var _0x5a5c33;if(_0x31a924[_0xb3ed('0x3c')]['search']){_0x5a5c33=as[_0xb3ed('0x5d')](_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x5e')]);var _0x19d436=_0x5a5c33[_0xb3ed('0x5f')];for(var _0x25a84b=0x0;_0x25a84b<_0x5a5c33['conditions']['length'];_0x25a84b++){var _0xe26486=_0x5a5c33[_0xb3ed('0x60')][_0x25a84b];var _0x437ba9='i';var _0x337fdf=_['find'](_0x1c96b1,['name',_0xe26486[_0xb3ed('0x49')]]);if(!_0x337fdf){switch(_0xe26486[_0xb3ed('0x49')]){case'unreadMessages':if(_0xe26486[_0xb3ed('0x61')]==0x1){_0x1e0fdd['having']('`'+_0xe26486['field']+'`\x20=\x200');}else{_0x1e0fdd[_0xb3ed('0x62')]('`'+_0xe26486[_0xb3ed('0x49')]+_0xb3ed('0x63'));}break;case'Contact':if(_0xe26486[_0xb3ed('0x64')]===_0xb3ed('0x65')){if(_0xe26486[_0xb3ed('0x61')]['split']('\x20')[_0xb3ed('0x41')]>0x1){_0x2a560e[_0x19d436](_0xb3ed('0x66'),qs[_0xb3ed('0x67')](_0xe26486['value']),null);}else{var _0x52adb7='%'+_0xe26486[_0xb3ed('0x61')]+'%';_0x2a560e[_0x19d436](_0xb3ed('0x68'),_0x52adb7,_0x52adb7,_0x52adb7);}}else{_0x337fdf=_[_0xb3ed('0x69')](_0x1c96b1,[_0xb3ed('0x27'),_0xb3ed('0x6a')]);_0xe26486[_0xb3ed('0x49')]=_0xb3ed('0x6a');_0x204548=as[_0xb3ed('0x6b')](_0x437ba9,_0x337fdf[_0xb3ed('0x39')],_0xe26486);_0x2a560e[_0x19d436](_0x204548[_0xb3ed('0x6c')],_0x204548[_0xb3ed('0x61')]['start'],_0x204548[_0xb3ed('0x61')]['end']);}break;case'Tag':var _0x323cad=_0xe26486[_0xb3ed('0x61')][_0xb3ed('0x2d')](',')[_0xb3ed('0x2a')](function(_0x3fca5a){return Number(_0x3fca5a);});_0x323cad['forEach'](function(_0x4b23e9){_0x543e4c['or'](_0xb3ed('0x6d'),'%,'+_0x4b23e9+',%');});_0x28fc79=_[_0xb3ed('0x6e')](_0x28fc79,_0x323cad);break;case _0xb3ed('0x6f'):if(_0xe26486[_0xb3ed('0x64')]==='$substring'){_0x2a560e[_0x19d436](_0xb3ed('0x70'),'%'+_0xe26486['value']+'%',null);}else{_0x337fdf=_[_0xb3ed('0x69')](_0x1c96b1,[_0xb3ed('0x27'),'UserId']);_0xe26486[_0xb3ed('0x49')]='UserId';_0x204548=as[_0xb3ed('0x6b')](_0x437ba9,_0x337fdf['type'],_0xe26486);_0x2a560e[_0x19d436](_0x204548[_0xb3ed('0x6c')],_0x204548[_0xb3ed('0x61')]['start'],_0x204548[_0xb3ed('0x61')]['end']);}break;case'plainBody':_0x204548=as[_0xb3ed('0x6b')]('me',null,_0xe26486);_0x2a560e[_0x19d436](_0x204548[_0xb3ed('0x6c')],_0x204548['value'][_0xb3ed('0x71')],_0x204548[_0xb3ed('0x61')]['end']);break;}}else{var _0x204548=as[_0xb3ed('0x6b')](_0x437ba9,_0x337fdf[_0xb3ed('0x39')],_0xe26486);_0x2a560e[_0x19d436](_0x204548[_0xb3ed('0x6c')],_0x204548['value'][_0xb3ed('0x71')],_0x204548[_0xb3ed('0x61')]['end']);}}}else{var _0xae5f89=_(_0x31a924[_0xb3ed('0x3c')])['keys']()[_0xb3ed('0x2a')](function(_0x3b82cc){return _[_0xb3ed('0x72')](_0x1c96b1,[_0xb3ed('0x27'),_0x3b82cc])?_0x3b82cc:undefined;})[_0xb3ed('0x73')]()[_0xb3ed('0x61')]();if(!_['isEmpty'](_0xae5f89)){_0xae5f89['forEach'](function(_0x2f63c5){if(_0x2f63c5===_0xb3ed('0x74')){_0x1e0fdd[_0xb3ed('0x47')](_0xb3ed('0x75'),[][_0xb3ed('0x76')](_0x31a924['query'][_0x2f63c5]));}else if(_0x2f63c5===_0xb3ed('0x77')){var _0x33ea8a=JSON[_0xb3ed('0x78')](_0x31a924[_0xb3ed('0x3c')][_0x2f63c5])[_0xb3ed('0x79')];var _0x4dc986=JSON[_0xb3ed('0x78')](_0x31a924[_0xb3ed('0x3c')][_0x2f63c5])[_0xb3ed('0x7a')];_0x1e0fdd[_0xb3ed('0x47')](_0xb3ed('0x7b'),_0x33ea8a,_0x4dc986);}else{if(_0x31a924[_0xb3ed('0x3c')][_0x2f63c5]==='null'){_0x1e0fdd[_0xb3ed('0x47')]('i.'+_0x2f63c5+'\x20IS\x20NULL');}else{_0x1e0fdd[_0xb3ed('0x47')]('i.'+_0x2f63c5+_0xb3ed('0x7c'),_0x31a924['query'][_0x2f63c5]);}}});}if(_0x31a924['query'][_0xb3ed('0x7d')]){if(_0x31a924[_0xb3ed('0x3c')]['read']==0x1){_0x1e0fdd[_0xb3ed('0x62')](_0xb3ed('0x7e'));}else{_0x1e0fdd[_0xb3ed('0x62')]('`unreadMessages`\x20>\x200');}}if(_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x7f')]){_0x28fc79=_[_0xb3ed('0x80')](_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x7f')])?_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x7f')]:new Array(_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x7f')]);_0x28fc79[_0xb3ed('0x2e')](function(_0x52f48d){_0x543e4c['or'](_0xb3ed('0x6d'),'%,'+_0x52f48d+',%');});}if(_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x81')]){var _0x57ba15=_0x31a924['query']['filter'][_0xb3ed('0x82')]('\x5c','\x5c\x5c')[_0xb3ed('0x82')](/'/g,'\x27\x27');if(qs[_0xb3ed('0x83')](_0x57ba15)){_0x2a560e['or']('i.id\x20LIKE\x20?',_0x57ba15+'%');}else if(qs[_0xb3ed('0x84')](_0x57ba15)){_0x2a560e['or'](_0xb3ed('0x85'),_0x57ba15+'%');}else{_0x2a560e['or'](_0xb3ed('0x86'),qs[_0xb3ed('0x67')](_0x57ba15))['or'](_0xb3ed('0x87'),qs['getFullTextValue'](_0x57ba15));}}}_0x1e0fdd[_0xb3ed('0x47')](_0x2a560e);_0x1e0fdd[_0xb3ed('0x88')]('i.id');var _0x4b333a={'type':db[_0xb3ed('0x89')]['QueryTypes'][_0xb3ed('0x8a')],'raw':!![]};var _0x3266eb=_0x1e0fdd[_0xb3ed('0x8b')]();_0x3266eb[_0xb3ed('0x49')](_0xb3ed('0x8c'));_0x3266eb[_0xb3ed('0x49')](_0xb3ed('0x8d'),'unreadMessages');if(_0x50a509[_0xb3ed('0x45')]){_0x50a509[_0xb3ed('0x45')][_0xb3ed('0x2e')](function(_0xd485a6){var _0x2420af=_0xd485a6[0x0]===_0xb3ed('0x8e')?_0xd485a6[0x0]:'i.'+_0xd485a6[0x0];_0x1e0fdd['order'](_0x2420af,_0xd485a6[0x1]===_0xb3ed('0x8f')?![]:!![]);});}if(!_[_0xb3ed('0x90')](_0x28fc79)){_0x1e0fdd[_0xb3ed('0x62')](_0x543e4c);_0x3266eb[_0xb3ed('0x47')](_0xb3ed('0x91'),_0x28fc79);}BPromise[_0xb3ed('0x92')]()[_0xb3ed('0x32')](function(){if(!_0x5a5c33){if(_0x31a924[_0xb3ed('0x3c')][_0xb3ed('0x74')])return;_0x3266eb['where']('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x1e0fdd[_0xb3ed('0x47')]('i.MailAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x31a924['user'][_0xb3ed('0x93')]!=='agent')return;return _0x31a924['user']['getMailAccounts']({'attributes':['id'],'raw':!![]})[_0xb3ed('0x32')](function(_0x5e727a){if(_['isEmpty'](_0x5e727a)){_0x3266eb[_0xb3ed('0x47')](_0xb3ed('0x94'));_0x1e0fdd['where'](_0xb3ed('0x94'));}else{_0x3266eb[_0xb3ed('0x47')](_0xb3ed('0x75'),_['map'](_0x5e727a,'id'));_0x1e0fdd[_0xb3ed('0x47')](_0xb3ed('0x75'),_[_0xb3ed('0x2a')](_0x5e727a,'id'));}});})[_0xb3ed('0x32')](function(){if(_0x31a924[_0xb3ed('0x95')][_0xb3ed('0x93')]===_0xb3ed('0x96')&&!_0x5a5c33&&!_0x31a924[_0xb3ed('0x3c')]['MailAccountId'])return[];return db[_0xb3ed('0x97')]['query'](_0x3266eb[_0xb3ed('0x98')](),_0x4b333a);})['then'](function(_0xe2551b){_0x3b2d61[_0xb3ed('0x1f')]=_0xe2551b['length'];if(_0x3b2d61[_0xb3ed('0x1f')]===0x0)return[];return db[_0xb3ed('0x97')]['query'](_0x2a55bf[_0xb3ed('0x98')](),_0x4b333a)[_0xb3ed('0x32')](function(_0x413a03){_0xcf646e=_['keyBy'](_0x413a03,'id');_0x4b333a=_['merge'](_0x4b333a,{'model':db[_0xb3ed('0x36')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x31a924['query'][_0xb3ed('0x3f')]){_0x50a509[_0xb3ed('0x40')][_0xb3ed('0x2e')](function(_0x863f2f){_0x1e0fdd[_0xb3ed('0x49')]('i.'+_0x863f2f);});}else{_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x8d'),'unreadMessages');_0x1e0fdd['field'](_0xb3ed('0x99'),'Account.key');_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x9a'),_0xb3ed('0x9b'));_0x1e0fdd[_0xb3ed('0x49')]('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',_0xb3ed('0x8e'));_0x1e0fdd['field'](_0xb3ed('0x8c'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x9c'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x9d'));_0x1e0fdd['field']('i.closed');_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x9e'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0x9f'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa0'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa1'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa2'));_0x1e0fdd[_0xb3ed('0x49')]('i.disposition');_0x1e0fdd[_0xb3ed('0x49')]('i.secondDisposition');_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa3'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa4'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa5'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa6'));_0x1e0fdd[_0xb3ed('0x49')]('i.MailAccountId');_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa7'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xa8'),_0xb3ed('0xa9'));_0x1e0fdd[_0xb3ed('0x49')]('c.lastName',_0xb3ed('0xaa'));_0x1e0fdd['field'](_0xb3ed('0xab'),'Contact.email');_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xac'),_0xb3ed('0xad'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xae'),_0xb3ed('0xaf'));_0x1e0fdd[_0xb3ed('0x49')]('c.fax',_0xb3ed('0xb0'));_0x1e0fdd[_0xb3ed('0x49')](_0xb3ed('0xb1'),_0xb3ed('0xb2'));_0x1e0fdd['field'](_0xb3ed('0xb3'),_0xb3ed('0xb4'));_0x1e0fdd['field'](_0xb3ed('0xb5'),_0xb3ed('0x2b'));}if(_0x50a509[_0xb3ed('0x43')])_0x1e0fdd[_0xb3ed('0x43')](_0x50a509['limit']);if(_0x50a509['offset'])_0x1e0fdd['offset'](_0x50a509[_0xb3ed('0x44')]);return db['sequelize'][_0xb3ed('0x3c')](_0x1e0fdd['toString'](),_0x4b333a);})['then'](function(_0x266295){_0x903f4d[_0xb3ed('0x47')](_0xb3ed('0xb6'),_[_0xb3ed('0x2a')](_0x266295,'id'));return db['sequelize'][_0xb3ed('0x3c')](_0x903f4d[_0xb3ed('0x98')](),_0x4b333a)[_0xb3ed('0x32')](function(_0xc5b8ea){var _0x44c66f=_[_0xb3ed('0xb7')](_0xc5b8ea,'MailInteractionId');var _0x3b9ce7=[];return db[_0xb3ed('0xb8')][_0xb3ed('0x2f')]({'attributes':[_0xb3ed('0xb9')],'raw':!![]})[_0xb3ed('0x32')](function(_0x3746ab){var _0xc4b611=_0x3746ab[_0xb3ed('0xb9')];_0x266295[_0xb3ed('0x2e')](function(_0xa4fd93){_0x3b9ce7[_0xb3ed('0xba')](updateMailInteraction(_0xa4fd93,_0xcf646e,_0x44c66f,_0xc4b611));});return BPromise[_0xb3ed('0xbb')](_0x3b9ce7);});});});})[_0xb3ed('0x32')](function(_0x49de50){_0x3b2d61[_0xb3ed('0xbc')]=_0x49de50;return _0x3b2d61;})[_0xb3ed('0x32')](respondWithFilteredResult(_0x2f06c0,_0x50a509))[_0xb3ed('0x35')](handleError(_0x2f06c0,null));};exports[_0xb3ed('0xbd')]=function(_0x3ea2cd,_0x5d56b7){var _0x14bbb4={'raw':![],'where':{'id':_0x3ea2cd[_0xb3ed('0xbe')]['id']}},_0x405aef={};_0x405aef['model']=_[_0xb3ed('0xbf')](db[_0xb3ed('0x36')][_0xb3ed('0x37')]);_0x405aef[_0xb3ed('0x3c')]=_['keys'](_0x3ea2cd[_0xb3ed('0x3c')]);_0x405aef['filters']=_[_0xb3ed('0x3e')](_0x405aef[_0xb3ed('0x3b')],_0x405aef[_0xb3ed('0x3c')]);_0x14bbb4[_0xb3ed('0x40')]=_[_0xb3ed('0x3e')](_0x405aef[_0xb3ed('0x3b')],qs[_0xb3ed('0x3f')](_0x3ea2cd[_0xb3ed('0x3c')][_0xb3ed('0x3f')]));_0x14bbb4[_0xb3ed('0x40')]=_0x14bbb4[_0xb3ed('0x40')]['length']?_0x14bbb4[_0xb3ed('0x40')]:_0x405aef[_0xb3ed('0x3b')];if(_0x3ea2cd[_0xb3ed('0x3c')]['includeAll']){_0x14bbb4[_0xb3ed('0xc0')]=[{'all':!![]}];}_0x14bbb4=_['merge']({},_0x14bbb4,_0x3ea2cd[_0xb3ed('0xc1')]);return db[_0xb3ed('0x36')]['find'](_0x14bbb4)[_0xb3ed('0x32')](handleEntityNotFound(_0x5d56b7,null))[_0xb3ed('0x32')](respondWithResult(_0x5d56b7,null))[_0xb3ed('0x35')](handleError(_0x5d56b7,null));};exports[_0xb3ed('0xc2')]=function(_0x591c25,_0x563219){return db[_0xb3ed('0x36')]['create'](_0x591c25['body'],{})[_0xb3ed('0x32')](respondWithResult(_0x563219,0xc9))[_0xb3ed('0x35')](handleError(_0x563219,null));};exports['update']=function(_0x4ff0eb,_0x53fade){if(_0x4ff0eb[_0xb3ed('0xc3')]['id']){delete _0x4ff0eb[_0xb3ed('0xc3')]['id'];}return db[_0xb3ed('0x36')][_0xb3ed('0x69')]({'where':{'id':_0x4ff0eb[_0xb3ed('0xbe')]['id']}})[_0xb3ed('0x32')](handleEntityNotFound(_0x53fade,null))[_0xb3ed('0x32')](saveUpdates(_0x4ff0eb[_0xb3ed('0xc3')],null))[_0xb3ed('0x32')](respondWithResult(_0x53fade,null))[_0xb3ed('0x35')](handleError(_0x53fade,null));};exports[_0xb3ed('0x25')]=function(_0x34d859,_0x51f1be){return db['MailInteraction'][_0xb3ed('0x69')]({'where':{'id':_0x34d859[_0xb3ed('0xbe')]['id']}})['then'](handleEntityNotFound(_0x51f1be,null))[_0xb3ed('0x32')](removeEntity(_0x51f1be,null))[_0xb3ed('0x35')](handleError(_0x51f1be,null));};exports[_0xb3ed('0xc4')]=function(_0xfd149,_0x24b1cc){return db[_0xb3ed('0x36')][_0xb3ed('0xc4')]()['then'](respondWithResult(_0x24b1cc,null))['catch'](handleError(_0x24b1cc,null));};exports[_0xb3ed('0xc5')]=function(_0x5ad979,_0x14cdff,_0xad5754){return db[_0xb3ed('0xc6')][_0xb3ed('0x69')]({'where':{'id':_0x5ad979['params']['id']}})[_0xb3ed('0x32')](handleEntityNotFound(_0x14cdff,null))[_0xb3ed('0x32')](function(_0x27ef27){if(_0x27ef27){return _0x27ef27['addMessage'](_0x5ad979[_0xb3ed('0xc3')][_0xb3ed('0xc7')],_['omit'](_0x5ad979[_0xb3ed('0xc3')],[_0xb3ed('0xc7'),'id'])||{});}})[_0xb3ed('0x32')](respondWithResult(_0x14cdff,null))[_0xb3ed('0x35')](handleError(_0x14cdff,null));};exports[_0xb3ed('0xc8')]=function(_0x5ad9ec,_0x45b090,_0x2e4d3a){var _0x59a573={'raw':![],'where':{}};var _0x3cd65b={};var _0x384158={'count':0x0,'rows':[]};return db[_0xb3ed('0x36')][_0xb3ed('0x2f')]({'where':{'id':_0x5ad9ec[_0xb3ed('0xbe')]['id']}})[_0xb3ed('0x32')](handleEntityNotFound(_0x45b090,null))[_0xb3ed('0x32')](function(_0xf6d94d){if(_0xf6d94d){_0x3cd65b[_0xb3ed('0x3b')]=_[_0xb3ed('0xbf')](db[_0xb3ed('0xc6')][_0xb3ed('0x37')]);_0x3cd65b['query']=_[_0xb3ed('0xbf')](_0x5ad9ec[_0xb3ed('0x3c')]);_0x3cd65b[_0xb3ed('0x3d')]=_[_0xb3ed('0x3e')](_0x3cd65b[_0xb3ed('0x3b')],_0x3cd65b[_0xb3ed('0x3c')]);_0x59a573['attributes']=_[_0xb3ed('0x3e')](_0x3cd65b[_0xb3ed('0x3b')],qs[_0xb3ed('0x3f')](_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x3f')]));_0x59a573[_0xb3ed('0x40')]=_0x59a573[_0xb3ed('0x40')][_0xb3ed('0x41')]?_0x59a573[_0xb3ed('0x40')]:_0x3cd65b[_0xb3ed('0x3b')];if(!_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0xc9')](_0xb3ed('0x42'))){_0x59a573[_0xb3ed('0x43')]=qs[_0xb3ed('0x43')](_0x5ad9ec[_0xb3ed('0x3c')]['limit']);_0x59a573[_0xb3ed('0x44')]=qs['offset'](_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x44')]);}_0x59a573[_0xb3ed('0x45')]=qs[_0xb3ed('0x46')](_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x46')]);_0x59a573[_0xb3ed('0x47')]=qs[_0xb3ed('0x3d')](_[_0xb3ed('0x48')](_0x5ad9ec[_0xb3ed('0x3c')],_0x3cd65b[_0xb3ed('0x3d')]));_0x59a573[_0xb3ed('0x47')][_0xb3ed('0xca')]=_0xf6d94d['id'];if(_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x81')]){_0x59a573[_0xb3ed('0x47')]=_[_0xb3ed('0xcb')](_0x59a573[_0xb3ed('0x47')],{'$or':_['map'](_0x59a573[_0xb3ed('0x40')],function(_0x43259c){var _0x7b060a={};_0x7b060a[_0x43259c]={'$like':'%'+_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x81')]+'%'};return _0x7b060a;})});}if(_0x5ad9ec[_0xb3ed('0x3c')]['$gte']){var _0xc94f59=_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0x79')]['split'](',');var _0x332961={};_0x332961[_0xc94f59[0x0]]={'$gte':moment(_0xc94f59[0x1])[_0xb3ed('0xcc')](_0xb3ed('0xcd'))};_0x59a573[_0xb3ed('0x47')]=_[_0xb3ed('0xcb')](_0x59a573[_0xb3ed('0x47')],_0x332961);}_0x59a573=_[_0xb3ed('0xcb')]({},_0x59a573,_0x5ad9ec[_0xb3ed('0xc1')]);return db[_0xb3ed('0xc6')][_0xb3ed('0x1f')]({'where':_0x59a573[_0xb3ed('0x47')]})[_0xb3ed('0x32')](function(_0x5839e9){_0x384158[_0xb3ed('0x1f')]=_0x5839e9;if(_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0xce')]){_0x59a573[_0xb3ed('0xc0')]=[{'all':!![]}];}return db[_0xb3ed('0xc6')][_0xb3ed('0xcf')](_0x59a573);})[_0xb3ed('0x32')](function(_0x31f297){if(_0x5ad9ec[_0xb3ed('0x3c')][_0xb3ed('0xd0')]===_0xb3ed('0xd1')){for(var _0x26e801=0x0;_0x26e801<_0x31f297[_0xb3ed('0x41')];_0x26e801++){_0x31f297[_0x26e801][_0xb3ed('0xc3')]=juice(_0x31f297[_0x26e801][_0xb3ed('0xc3')]);}}_0x384158['rows']=_0x31f297;return _0x384158;});}})['then'](respondWithFilteredResult(_0x45b090,_0x59a573))[_0xb3ed('0x35')](handleError(_0x45b090,null));};exports[_0xb3ed('0xd2')]=function(_0x578c95,_0x19ba07,_0x32ccac){return db[_0xb3ed('0x36')]['find']({'where':{'id':_0x578c95[_0xb3ed('0xbe')]['id']}})[_0xb3ed('0x32')](handleEntityNotFound(_0x19ba07,null))['then'](function(_0x36b04b){if(_0x36b04b){return _0x36b04b['setTags'](_0x578c95[_0xb3ed('0xc3')][_0xb3ed('0xc7')],_['omit'](_0x578c95[_0xb3ed('0xc3')],[_0xb3ed('0xc7'),'id'])||{})[_0xb3ed('0xd3')](function(){return db[_0xb3ed('0xd4')][_0xb3ed('0xcf')]({'attributes':['id',_0xb3ed('0x27'),_0xb3ed('0x4a')],'where':{'id':_0x578c95['body'][_0xb3ed('0xc7')]}});})['then'](function(_0x28c6d5){socket[_0xb3ed('0xd5')](_0xb3ed('0xd6'),{'id':Number(_0x578c95['params']['id']),'tags':_0x28c6d5||[]});return{'id':Number(_0x578c95[_0xb3ed('0xbe')]['id']),'tags':_0x28c6d5||[]};});}})[_0xb3ed('0x32')](respondWithResult(_0x19ba07,null))[_0xb3ed('0x35')](handleError(_0x19ba07,null));};exports[_0xb3ed('0xd7')]=function(_0x5ac29b,_0x2645cd,_0x2d60a9){return db[_0xb3ed('0x36')][_0xb3ed('0x69')]({'where':{'id':_0x5ac29b[_0xb3ed('0xbe')]['id']}})[_0xb3ed('0x32')](handleEntityNotFound(_0x2645cd,null))[_0xb3ed('0x32')](function(_0x3896d6){if(_0x3896d6){return _0x3896d6[_0xb3ed('0xd7')](_0x5ac29b[_0xb3ed('0x3c')]['ids']);}})[_0xb3ed('0x32')](respondWithStatusCode(_0x2645cd,null))['catch'](handleError(_0x2645cd,null));};exports[_0xb3ed('0xd8')]=function(_0x556dea,_0x1683bf){var _0x5dac81=moment()['unix']()['toString']();var _0x40e446=path[_0xb3ed('0xd9')](config[_0xb3ed('0xda')],_0xb3ed('0xdb'),_0xb3ed('0xdc'),'tmp');var _0x3f9f0b=path['join'](config[_0xb3ed('0xda')],_0xb3ed('0xdb'),_0xb3ed('0xdc'),'attachments');var _0x47dadf=path['join'](_0x40e446,_0x5dac81);var _0x4d2aee=util['format'](_0xb3ed('0xdd'),_0x556dea[_0xb3ed('0xbe')]['id'],_0x5dac81);var _0x23cef7=path[_0xb3ed('0xd9')](_0x40e446,_0x4d2aee);var _0x114850=[];if(_0x556dea[_0xb3ed('0x3c')][_0xb3ed('0xde')]){_0x114850[_0xb3ed('0xba')]({'model':db[_0xb3ed('0xdf')],'as':_0xb3ed('0xe0'),'raw':!![]});}var _0x584b77=[{'model':db[_0xb3ed('0xc6')],'as':'Messages','attributes':['id',_0xb3ed('0xc3'),_0xb3ed('0x4b'),'to','cc',_0xb3ed('0xe1'),_0xb3ed('0xe2'),_0xb3ed('0x77')],'where':{'secret':![]},'order':qs[_0xb3ed('0x46')]('id'),'include':_0x114850}];return db[_0xb3ed('0x36')][_0xb3ed('0x69')]({'where':{'id':_0x556dea['params']['id']},'include':_0x584b77})['then'](handleEntityNotFound(_0x1683bf,null))[_0xb3ed('0x32')](function(_0x3203d5){if(_0x3203d5&&_0x3203d5[_0xb3ed('0xe3')]){var _0x3c0378=_0x3203d5['get']({'plain':!![]});fs['mkdirSync'](_0x47dadf);return BPromise[_0xb3ed('0xe4')](_0x3c0378['Messages'],function(_0x4f7898,_0x1e65be){var _0x59a183={'from':_0x4f7898[_0xb3ed('0x4b')],'to':_0x4f7898['to'],'subject':_0x4f7898['subject'],'html':_0x4f7898[_0xb3ed('0xc3')],'headers':{'Date':moment(_0x4f7898[_0xb3ed('0x77')])['format'](_0xb3ed('0xe5'))},'attachments':[]};if(_0x4f7898['cc']){_0x59a183[_0xb3ed('0xe6')]['Cc']=_0x4f7898['cc'];}if(_0x4f7898[_0xb3ed('0xe1')]){_0x59a183[_0xb3ed('0xe6')][_0xb3ed('0xe7')]=_0x4f7898[_0xb3ed('0xe1')];}return new BPromise(function(_0x58367f,_0x35ca10){if(_0x4f7898[_0xb3ed('0xe0')]){for(var _0x4759eb=0x0;_0x4759eb<_0x4f7898[_0xb3ed('0xe0')][_0xb3ed('0x41')];_0x4759eb++){var _0x2f50f5=_0x4f7898['Attachments'][_0x4759eb];var _0x284af3=path[_0xb3ed('0xd9')](_0x3f9f0b,_0x2f50f5[_0xb3ed('0xe8')]);if(fs[_0xb3ed('0xe9')](_0x284af3)){_0x59a183['attachments']['push']({'name':_0x2f50f5['name'],'contentType':_0x2f50f5[_0xb3ed('0x39')],'data':fs[_0xb3ed('0xea')](_0x284af3)});}}}emlformat[_0xb3ed('0xeb')](_0x59a183,function(_0x443ca8,_0x3709f2){if(_0x443ca8)return _0x35ca10(_0x443ca8);fs[_0xb3ed('0xec')](path[_0xb3ed('0xd9')](_0x47dadf,util['format'](_0xb3ed('0xed'),_0x1e65be)),_0x3709f2);return _0x58367f(_0x3709f2);});});})[_0xb3ed('0x32')](function(){return new BPromise(function(_0x4c73e6,_0x2a9b22){zipdir(_0x47dadf,{'saveTo':_0x23cef7},function(_0x5da326,_0x3a2487){if(_0x5da326)return _0x2a9b22(_0x5da326);return _0x4c73e6(_0x3a2487);});})['then'](function(){return new BPromise(function(_0x154023,_0x15dcdb){rimraf(_0x47dadf,function(_0x32e3b9){if(_0x32e3b9)_0x15dcdb(_0x32e3b9);return _0x154023();});});})['then'](function(){return _0x1683bf['download'](_0x23cef7,_0x4d2aee,function(_0x6bd00a){if(_0x6bd00a){console['log'](_0xb3ed('0xee'),_0x6bd00a);}else{fs[_0xb3ed('0xef')](_0x23cef7);}});});});}else{return _0x1683bf[_0xb3ed('0x1b')](0xc8);}})[_0xb3ed('0x35')](handleError(_0x1683bf,null));};
\ No newline at end of file
+var _0x236d=['$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','find','ContactId','buildExpression','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','type','compact','isEmpty','MailAccountId','concat','parse','$gte','$lte','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','Sequelize','SELECT','clone','i.id','order','contactName','role','user','i.MailAccountId\x20IS\x20NULL','i.MailAccountId\x20IN\x20?','agent','sequelize','toString','MailInteraction','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.createdAt','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.secondDisposition','i.thirdDisposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','c.lastName','Contact.lastName','c.email','Contact.email','Contact.phone','Contact.mobile','Contact.fax','o.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','Setting','rows','show','fields','includeAll','include','merge','create','body','params','describe','addMessage','ids','omit','getMessages','filters','pick','MailInteractionId','options','findAll','inlineCss','true','addTags','setTags','spread','emit','removeTags','download','join','root','server','files','attachments','Attachment','Messages','subject','createdAt','get','mkdirSync','each','decode','headers','bcc','Attachments','basename','readFileSync','build','writeFileSync','format','message%d.eml','unlinkSync','eml-format','rimraf','moment','util','path','lodash','squel','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','html-entities','redis','localhost','./mailInteraction.socket','register','sendStatus','end','status','json','offset','undefined','limit','count','Content-Range','update','then','destroy','name','Users','map','fullname','TagIds','Tags','split','forEach','push','MailMessage','findOne','out','plainBody','-id','lastMsgText','catch','waiting','talking','answered','unmanaged','total','closed','UserId','index','rawAttributes','fieldName','model','query','keys','intersection','attributes','hasOwnProperty','nolimit','sort','where','select','field','color','from','tools_tags','ui.MailInteractionId','user_has_mail_interactions','left_join','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','users','o.id\x20=\x20i.UserId','me.MailInteractionId\x20=\x20i.id','it.MailInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','parseSearch','search','sqlOperator','conditions','length','unreadMessages','value','having','`\x20>\x200','Contact','operator'];(function(_0x4dbfce,_0xaf8cdf){var _0x1f3e53=function(_0x589c63){while(--_0x589c63){_0x4dbfce['push'](_0x4dbfce['shift']());}};_0x1f3e53(++_0xaf8cdf);}(_0x236d,0x7e));var _0xd236=function(_0x321bb2,_0x202794){_0x321bb2=_0x321bb2-0x0;var _0x9c12ed=_0x236d[_0x321bb2];return _0x9c12ed;};'use strict';var emlformat=require(_0xd236('0x0'));var rimraf=require(_0xd236('0x1'));var zipdir=require('zip-dir');var moment=require(_0xd236('0x2'));var BPromise=require('bluebird');var util=require(_0xd236('0x3'));var path=require(_0xd236('0x4'));var fs=require('fs');var _=require(_0xd236('0x5'));var squel=require(_0xd236('0x6'));var juice=require('juice');var Redis=require('ioredis');var qs=require(_0xd236('0x7'));var as=require(_0xd236('0x8'));var logger=require(_0xd236('0x9'))(_0xd236('0xa'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];var htmlEntities=require(_0xd236('0xb'));config[_0xd236('0xc')]=_['defaults'](config[_0xd236('0xc')],{'host':_0xd236('0xd'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd236('0xc')]));require(_0xd236('0xe'))[_0xd236('0xf')](socket);function respondWithStatusCode(_0x594013,_0x470524){_0x470524=_0x470524||0xcc;return function(_0x2e4986){if(_0x2e4986){return _0x594013[_0xd236('0x10')](_0x470524);}return _0x594013['status'](_0x470524)[_0xd236('0x11')]();};}function respondWithResult(_0x2fe18d,_0x3d1076){_0x3d1076=_0x3d1076||0xc8;return function(_0x160cb1){if(_0x160cb1){return _0x2fe18d[_0xd236('0x12')](_0x3d1076)[_0xd236('0x13')](_0x160cb1);}};}function respondWithFilteredResult(_0x206b35,_0x974c47){return function(_0x22435c){if(_0x22435c){var _0x3d7465=typeof _0x974c47[_0xd236('0x14')]===_0xd236('0x15')&&typeof _0x974c47[_0xd236('0x16')]===_0xd236('0x15');var _0xd851b5=_0x22435c[_0xd236('0x17')];var _0x2a076d=_0x3d7465?0x0:_0x974c47[_0xd236('0x14')];var _0x24ce6e=_0x3d7465?_0x22435c[_0xd236('0x17')]:_0x974c47['offset']+_0x974c47['limit'];var _0x216a25;if(_0x24ce6e>=_0xd851b5){_0x24ce6e=_0xd851b5;_0x216a25=0xc8;}else{_0x216a25=0xce;}_0x206b35[_0xd236('0x12')](_0x216a25);return _0x206b35['set'](_0xd236('0x18'),_0x2a076d+'-'+_0x24ce6e+'/'+_0xd851b5)[_0xd236('0x13')](_0x22435c);}return null;};}function saveUpdates(_0x132752){return function(_0x595fd4){if(_0x595fd4){return _0x595fd4[_0xd236('0x19')](_0x132752)[_0xd236('0x1a')](function(_0x31f0bb){return _0x31f0bb;});}return null;};}function removeEntity(_0x551b53){return function(_0x25220d){if(_0x25220d){return _0x25220d[_0xd236('0x1b')]()[_0xd236('0x1a')](function(){_0x551b53[_0xd236('0x12')](0xcc)[_0xd236('0x11')]();});}};}function handleEntityNotFound(_0x58cc3f){return function(_0x2a1255){if(!_0x2a1255){_0x58cc3f[_0xd236('0x10')](0x194);}return _0x2a1255;};}function handleError(_0x1e4ddb,_0x3d1e4e){_0x3d1e4e=_0x3d1e4e||0x1f4;return function(_0xf28313){logger['error'](_0xf28313['stack']);if(_0xf28313[_0xd236('0x1c')]){delete _0xf28313['name'];}_0x1e4ddb[_0xd236('0x12')](_0x3d1e4e)['send'](_0xf28313);};}function getInteractionUsers(_0x2be060,_0x2174f5){return new BPromise(function(_0x234930,_0x49d822){try{if(_0x2174f5[_0x2be060['id']]){_0x2be060[_0xd236('0x1d')]=_[_0xd236('0x1e')](_0x2174f5[_0x2be060['id']],function(_0x6d3372){return{'id':_0x6d3372['id'],'fullname':_0x6d3372[_0xd236('0x1f')]};});}}catch(_0x3a30d8){_0x49d822(_0x3a30d8);}_0x234930(_0x2be060);});}function getInteractionTags(_0x17f927,_0x41cf34){return new BPromise(function(_0x21eeab,_0x2cbb03){try{if(_0x17f927[_0xd236('0x20')]){_0x17f927[_0xd236('0x21')]=[];_0x17f927[_0xd236('0x20')][_0xd236('0x22')](',')[_0xd236('0x23')](function(_0x3108f4){_0x17f927[_0xd236('0x21')][_0xd236('0x24')](_0x41cf34[_0x3108f4]);});}delete _0x17f927[_0xd236('0x20')];}catch(_0x463fc8){_0x2cbb03(_0x463fc8);}_0x21eeab(_0x17f927);});}function getLastMessageText(_0x98d8b0){return new BPromise(function(_0x119de7,_0x37b099){return db[_0xd236('0x25')][_0xd236('0x26')]({'where':{'$and':[{'MailInteractionId':_0x98d8b0['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xd236('0x27')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xd236('0x28')],'order':_0xd236('0x29'),'raw':!![]})[_0xd236('0x1a')](function(_0x3d5f6d){if(_0x3d5f6d&&_0x3d5f6d['plainBody']){_0x98d8b0[_0xd236('0x2a')]=_['trimStart'](_0x3d5f6d[_0xd236('0x28')]);}_0x119de7(_0x98d8b0);})[_0xd236('0x2b')](function(_0x73a2fb){_0x37b099(_0x73a2fb);});});}function updateMailInteraction(_0x58cfb7,_0x1c1692,_0x37b5f7,_0x3bba5d){return new BPromise(function(_0x33400d,_0x2b8e83){return getInteractionUsers(_0x58cfb7,_0x37b5f7)[_0xd236('0x1a')](function(_0x42361d){return getInteractionTags(_0x42361d,_0x1c1692);})['then'](function(_0x2fa782){return getStateInteraction(_0x2fa782);})['then'](function(_0x284748){if(_0x3bba5d){_0x33400d(getLastMessageText(_0x284748));}else{_0x33400d(_0x284748);}})['catch'](function(_0x1fd01b){_0x2b8e83(_0x1fd01b);});});}function getStateInteraction(_0xb75faa){return new BPromise(function(_0x366128){_0xb75faa[_0xd236('0x2c')]=0x0;_0xb75faa[_0xd236('0x2d')]=0x0;_0xb75faa[_0xd236('0x2e')]=0x0;_0xb75faa[_0xd236('0x2f')]=0x0;_0xb75faa[_0xd236('0x30')]=0x0;if(!_0xb75faa[_0xd236('0x31')]&&!_0xb75faa[_0xd236('0x32')]){_0xb75faa[_0xd236('0x2c')]+=0x1;}if(!_0xb75faa[_0xd236('0x31')]&&_0xb75faa[_0xd236('0x32')]){_0xb75faa['talking']+=0x1;if(_0xb75faa[_0xd236('0x2c')]){_0xb75faa[_0xd236('0x2c')]-=0x1;}}if(_0xb75faa[_0xd236('0x31')]&&_0xb75faa['UserId']){_0xb75faa[_0xd236('0x2e')]+=0x1;if(_0xb75faa[_0xd236('0x2d')]){_0xb75faa[_0xd236('0x2d')]-=0x1;}}if(_0xb75faa[_0xd236('0x31')]&&!_0xb75faa[_0xd236('0x32')]){_0xb75faa[_0xd236('0x2f')]+=0x1;if(_0xb75faa['waiting']){_0xb75faa[_0xd236('0x2c')]-=0x1;}}_0xb75faa[_0xd236('0x30')]+=0x1;_0x366128(_0xb75faa);});}exports[_0xd236('0x33')]=function(_0x3c798f,_0x3c74f1){var _0x222495={},_0x4a9d27={},_0x35b950={'count':0x0,'rows':[]};var _0x2cd22e=_[_0xd236('0x1e')](db['MailInteraction'][_0xd236('0x34')],function(_0x5a8b18){return{'name':_0x5a8b18[_0xd236('0x35')],'type':_0x5a8b18['type']['key']};});_0x4a9d27[_0xd236('0x36')]=_[_0xd236('0x1e')](_0x2cd22e,_0xd236('0x1c'));_0x4a9d27[_0xd236('0x37')]=_[_0xd236('0x38')](_0x3c798f['query']);_0x4a9d27['filters']=_[_0xd236('0x39')](_0x4a9d27[_0xd236('0x36')],_0x4a9d27['query']);_0x222495[_0xd236('0x3a')]=_[_0xd236('0x39')](_0x4a9d27[_0xd236('0x36')],qs['fields'](_0x3c798f['query']['fields']));_0x222495[_0xd236('0x3a')]=_0x222495['attributes']['length']?_0x222495[_0xd236('0x3a')]:_0x4a9d27[_0xd236('0x36')];if(!_0x3c798f[_0xd236('0x37')][_0xd236('0x3b')](_0xd236('0x3c'))){_0x222495['limit']=qs['limit'](_0x3c798f[_0xd236('0x37')][_0xd236('0x16')]);_0x222495[_0xd236('0x14')]=qs[_0xd236('0x14')](_0x3c798f[_0xd236('0x37')][_0xd236('0x14')]);}_0x222495['order']=qs[_0xd236('0x3d')](_0x3c798f['query'][_0xd236('0x3d')]);_0x222495[_0xd236('0x3e')]=qs['filters'](_['pick'](_0x3c798f['query'],_0x4a9d27['filters']),_0x2cd22e);var _0x43ba74=[];var _0x11afc6=squel[_0xd236('0x3f')]()[_0xd236('0x40')]('id')[_0xd236('0x40')]('name')['field'](_0xd236('0x41'))[_0xd236('0x42')](_0xd236('0x43'));var _0x208548=squel[_0xd236('0x3f')]()[_0xd236('0x40')]('u.id')[_0xd236('0x40')]('u.fullname')[_0xd236('0x40')](_0xd236('0x44'))['from'](_0xd236('0x45'),'ui')[_0xd236('0x46')]('users','u','u.id\x20=\x20ui.UserId');var _0x135cfc=squel[_0xd236('0x3f')]()[_0xd236('0x42')](_0xd236('0x47'),'i')['left_join'](_0xd236('0x48'),'c',_0xd236('0x49'))[_0xd236('0x46')](_0xd236('0x4a'),'o',_0xd236('0x4b'))[_0xd236('0x46')]('mail_accounts','a','a.id\x20=\x20i.MailAccountId')[_0xd236('0x46')]('mail_messages','me',_0xd236('0x4c'))[_0xd236('0x46')]('mail_interaction_has_tags','it',_0xd236('0x4d'))[_0xd236('0x46')]('tools_tags','t',_0xd236('0x4e'));var _0x2d6549=squel[_0xd236('0x4f')]();var _0x3246b9=[];var _0x5b9337=squel['expr']();var _0x20b51b;if(_0x3c798f[_0xd236('0x37')]['search']){_0x20b51b=as[_0xd236('0x50')](_0x3c798f[_0xd236('0x37')][_0xd236('0x51')]);var _0x26b0c9=_0x20b51b[_0xd236('0x52')];for(var _0x54f23f=0x0;_0x54f23f<_0x20b51b[_0xd236('0x53')][_0xd236('0x54')];_0x54f23f++){var _0x2eefac=_0x20b51b['conditions'][_0x54f23f];var _0x284e3f='i';var _0x524d53=_['find'](_0x2cd22e,[_0xd236('0x1c'),_0x2eefac[_0xd236('0x40')]]);if(!_0x524d53){switch(_0x2eefac[_0xd236('0x40')]){case _0xd236('0x55'):if(_0x2eefac[_0xd236('0x56')]==0x1){_0x135cfc[_0xd236('0x57')]('`'+_0x2eefac[_0xd236('0x40')]+'`\x20=\x200');}else{_0x135cfc[_0xd236('0x57')]('`'+_0x2eefac[_0xd236('0x40')]+_0xd236('0x58'));}break;case _0xd236('0x59'):if(_0x2eefac[_0xd236('0x5a')]===_0xd236('0x5b')){if(_0x2eefac['value'][_0xd236('0x22')]('\x20')[_0xd236('0x54')]>0x1){_0x2d6549[_0x26b0c9](_0xd236('0x5c'),qs['getFullTextValue'](_0x2eefac[_0xd236('0x56')]),null);}else{var _0x6f83a2='%'+_0x2eefac[_0xd236('0x56')]+'%';_0x2d6549[_0x26b0c9]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x6f83a2,_0x6f83a2,_0x6f83a2);}}else{_0x524d53=_[_0xd236('0x5d')](_0x2cd22e,[_0xd236('0x1c'),_0xd236('0x5e')]);_0x2eefac[_0xd236('0x40')]='ContactId';_0x13e6cd=as[_0xd236('0x5f')](_0x284e3f,_0x524d53['type'],_0x2eefac);_0x2d6549[_0x26b0c9](_0x13e6cd[_0xd236('0x60')],_0x13e6cd['value'][_0xd236('0x61')],_0x13e6cd['value'][_0xd236('0x11')]);}break;case _0xd236('0x62'):var _0x5a1653=_0x2eefac[_0xd236('0x56')]['split'](',')[_0xd236('0x1e')](function(_0xe32357){return Number(_0xe32357);});_0x5a1653['forEach'](function(_0xc0c0f0){_0x5b9337['or'](_0xd236('0x63'),'%,'+_0xc0c0f0+',%');});_0x3246b9=_['union'](_0x3246b9,_0x5a1653);break;case'User':if(_0x2eefac[_0xd236('0x5a')]===_0xd236('0x5b')){_0x2d6549[_0x26b0c9]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x2eefac[_0xd236('0x56')]+'%',null);}else{_0x524d53=_['find'](_0x2cd22e,[_0xd236('0x1c'),_0xd236('0x32')]);_0x2eefac['field']=_0xd236('0x32');_0x13e6cd=as[_0xd236('0x5f')](_0x284e3f,_0x524d53[_0xd236('0x64')],_0x2eefac);_0x2d6549[_0x26b0c9](_0x13e6cd[_0xd236('0x60')],_0x13e6cd['value'][_0xd236('0x61')],_0x13e6cd[_0xd236('0x56')][_0xd236('0x11')]);}break;case'plainBody':_0x13e6cd=as[_0xd236('0x5f')]('me',null,_0x2eefac);_0x2d6549[_0x26b0c9](_0x13e6cd['text'],_0x13e6cd[_0xd236('0x56')][_0xd236('0x61')],_0x13e6cd[_0xd236('0x56')]['end']);break;}}else{var _0x13e6cd=as[_0xd236('0x5f')](_0x284e3f,_0x524d53[_0xd236('0x64')],_0x2eefac);_0x2d6549[_0x26b0c9](_0x13e6cd[_0xd236('0x60')],_0x13e6cd['value'][_0xd236('0x61')],_0x13e6cd[_0xd236('0x56')][_0xd236('0x11')]);}}}else{var _0x350711=_(_0x3c798f['query'])[_0xd236('0x38')]()[_0xd236('0x1e')](function(_0x5ec566){return _['some'](_0x2cd22e,[_0xd236('0x1c'),_0x5ec566])?_0x5ec566:undefined;})[_0xd236('0x65')]()[_0xd236('0x56')]();if(!_[_0xd236('0x66')](_0x350711)){_0x350711[_0xd236('0x23')](function(_0x372d9a){if(_0x372d9a===_0xd236('0x67')){_0x135cfc[_0xd236('0x3e')]('i.MailAccountId\x20IN\x20?',[][_0xd236('0x68')](_0x3c798f[_0xd236('0x37')][_0x372d9a]));}else if(_0x372d9a==='createdAt'){var _0x11712e=JSON[_0xd236('0x69')](_0x3c798f['query'][_0x372d9a])[_0xd236('0x6a')];var _0x1cdc97=JSON['parse'](_0x3c798f[_0xd236('0x37')][_0x372d9a])[_0xd236('0x6b')];_0x135cfc[_0xd236('0x3e')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x11712e,_0x1cdc97);}else{if(_0x3c798f['query'][_0x372d9a]==='null'){_0x135cfc[_0xd236('0x3e')]('i.'+_0x372d9a+'\x20IS\x20NULL');}else{_0x135cfc['where']('i.'+_0x372d9a+_0xd236('0x6c'),_0x3c798f[_0xd236('0x37')][_0x372d9a]);}}});}if(_0x3c798f[_0xd236('0x37')][_0xd236('0x6d')]){if(_0x3c798f['query'][_0xd236('0x6d')]==0x1){_0x135cfc[_0xd236('0x57')](_0xd236('0x6e'));}else{_0x135cfc['having'](_0xd236('0x6f'));}}if(_0x3c798f[_0xd236('0x37')][_0xd236('0x70')]){_0x3246b9=_[_0xd236('0x71')](_0x3c798f[_0xd236('0x37')]['tag'])?_0x3c798f['query'][_0xd236('0x70')]:new Array(_0x3c798f['query'][_0xd236('0x70')]);_0x3246b9[_0xd236('0x23')](function(_0x114afa){_0x5b9337['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x114afa+',%');});}if(_0x3c798f[_0xd236('0x37')][_0xd236('0x72')]){var _0x516bb1=_0x3c798f[_0xd236('0x37')][_0xd236('0x72')]['replace']('\x5c','\x5c\x5c')[_0xd236('0x73')](/'/g,'\x27\x27');if(qs[_0xd236('0x74')](_0x516bb1)){_0x2d6549['or']('i.id\x20LIKE\x20?',_0x516bb1+'%');}else if(qs['isEmail'](_0x516bb1)){_0x2d6549['or'](_0xd236('0x75'),_0x516bb1+'%');}else{_0x2d6549['or'](_0xd236('0x76'),qs['getFullTextValue'](_0x516bb1))['or'](_0xd236('0x77'),qs['getFullTextValue'](_0x516bb1));}}}_0x135cfc[_0xd236('0x3e')](_0x2d6549);_0x135cfc[_0xd236('0x78')]('i.id');var _0x26f817={'type':db[_0xd236('0x79')]['QueryTypes'][_0xd236('0x7a')],'raw':!![]};var _0x5864d9=_0x135cfc[_0xd236('0x7b')]();_0x5864d9[_0xd236('0x40')](_0xd236('0x7c'));_0x5864d9[_0xd236('0x40')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');if(_0x222495[_0xd236('0x7d')]){_0x222495['order'][_0xd236('0x23')](function(_0x1677b1){var _0x58d0a0=_0x1677b1[0x0]===_0xd236('0x7e')?_0x1677b1[0x0]:'i.'+_0x1677b1[0x0];_0x135cfc[_0xd236('0x7d')](_0x58d0a0,_0x1677b1[0x1]==='DESC'?![]:!![]);});}if(!_[_0xd236('0x66')](_0x3246b9)){_0x135cfc[_0xd236('0x57')](_0x5b9337);_0x5864d9[_0xd236('0x3e')]('t.id\x20IN\x20?',_0x3246b9);}BPromise['resolve']()[_0xd236('0x1a')](function(){if(!_0x20b51b){if(_0x3c798f[_0xd236('0x37')][_0xd236('0x67')])return;_0x5864d9[_0xd236('0x3e')]('i.MailAccountId\x20IS\x20NOT\x20NULL');_0x135cfc[_0xd236('0x3e')]('i.MailAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x3c798f['user'][_0xd236('0x7f')]!=='agent')return;return _0x3c798f[_0xd236('0x80')]['getMailAccounts']({'attributes':['id'],'raw':!![]})[_0xd236('0x1a')](function(_0x7f9b05){if(_[_0xd236('0x66')](_0x7f9b05)){_0x5864d9[_0xd236('0x3e')](_0xd236('0x81'));_0x135cfc['where'](_0xd236('0x81'));}else{_0x5864d9[_0xd236('0x3e')](_0xd236('0x82'),_[_0xd236('0x1e')](_0x7f9b05,'id'));_0x135cfc['where'](_0xd236('0x82'),_[_0xd236('0x1e')](_0x7f9b05,'id'));}});})[_0xd236('0x1a')](function(){if(_0x3c798f[_0xd236('0x80')][_0xd236('0x7f')]===_0xd236('0x83')&&!_0x20b51b&&!_0x3c798f[_0xd236('0x37')][_0xd236('0x67')])return[];return db[_0xd236('0x84')][_0xd236('0x37')](_0x5864d9[_0xd236('0x85')](),_0x26f817);})[_0xd236('0x1a')](function(_0x487546){_0x35b950[_0xd236('0x17')]=_0x487546[_0xd236('0x54')];if(_0x35b950[_0xd236('0x17')]===0x0)return[];return db[_0xd236('0x84')][_0xd236('0x37')](_0x11afc6[_0xd236('0x85')](),_0x26f817)[_0xd236('0x1a')](function(_0x4a4339){_0x43ba74=_['keyBy'](_0x4a4339,'id');_0x26f817=_['merge'](_0x26f817,{'model':db[_0xd236('0x86')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3c798f[_0xd236('0x37')]['fields']){_0x222495[_0xd236('0x3a')][_0xd236('0x23')](function(_0x6f16c6){_0x135cfc[_0xd236('0x40')]('i.'+_0x6f16c6);});}else{_0x135cfc['field'](_0xd236('0x87'),_0xd236('0x55'));_0x135cfc[_0xd236('0x40')](_0xd236('0x88'),_0xd236('0x89'));_0x135cfc[_0xd236('0x40')](_0xd236('0x8a'),_0xd236('0x8b'));_0x135cfc[_0xd236('0x40')]('CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20(\x27%\x27\x20+\x20a.email\x20+\x20\x27%\x27)\x20THEN\x20SUBSTRING_INDEX(i.to,\x20\x27<\x27,\x201)\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName');_0x135cfc[_0xd236('0x40')](_0xd236('0x7c'));_0x135cfc['field'](_0xd236('0x8c'));_0x135cfc[_0xd236('0x40')]('i.updatedAt');_0x135cfc[_0xd236('0x40')]('i.closed');_0x135cfc['field'](_0xd236('0x8d'));_0x135cfc[_0xd236('0x40')](_0xd236('0x8e'));_0x135cfc['field'](_0xd236('0x8f'));_0x135cfc[_0xd236('0x40')](_0xd236('0x90'));_0x135cfc[_0xd236('0x40')](_0xd236('0x91'));_0x135cfc[_0xd236('0x40')]('i.disposition');_0x135cfc[_0xd236('0x40')](_0xd236('0x92'));_0x135cfc[_0xd236('0x40')](_0xd236('0x93'));_0x135cfc['field'](_0xd236('0x94'));_0x135cfc[_0xd236('0x40')](_0xd236('0x95'));_0x135cfc[_0xd236('0x40')](_0xd236('0x96'));_0x135cfc['field'](_0xd236('0x97'));_0x135cfc[_0xd236('0x40')](_0xd236('0x98'));_0x135cfc['field'](_0xd236('0x99'),'Contact.firstName');_0x135cfc['field'](_0xd236('0x9a'),_0xd236('0x9b'));_0x135cfc[_0xd236('0x40')](_0xd236('0x9c'),_0xd236('0x9d'));_0x135cfc[_0xd236('0x40')]('c.phone',_0xd236('0x9e'));_0x135cfc[_0xd236('0x40')]('c.mobile',_0xd236('0x9f'));_0x135cfc[_0xd236('0x40')]('c.fax',_0xd236('0xa0'));_0x135cfc[_0xd236('0x40')](_0xd236('0xa1'),'Owner.fullname');_0x135cfc[_0xd236('0x40')](_0xd236('0xa2'),_0xd236('0xa3'));_0x135cfc[_0xd236('0x40')](_0xd236('0xa4'),_0xd236('0x20'));}if(_0x222495[_0xd236('0x16')])_0x135cfc[_0xd236('0x16')](_0x222495[_0xd236('0x16')]);if(_0x222495['offset'])_0x135cfc[_0xd236('0x14')](_0x222495[_0xd236('0x14')]);return db[_0xd236('0x84')][_0xd236('0x37')](_0x135cfc[_0xd236('0x85')](),_0x26f817);})[_0xd236('0x1a')](function(_0x491807){if(_0x491807[_0xd236('0x54')]>0x0)_0x208548[_0xd236('0x3e')]('ui.MailInteractionId\x20IN\x20?',_['map'](_0x491807,'id'));return db[_0xd236('0x84')]['query'](_0x208548[_0xd236('0x85')](),_0x26f817)['then'](function(_0x45d366){var _0x1d9e32=_[_0xd236('0xa5')](_0x45d366,'MailInteractionId');var _0x5bb55c=[];return db[_0xd236('0xa6')]['findOne']({'attributes':['enableEmailPreview'],'raw':!![]})[_0xd236('0x1a')](function(_0x5680a3){var _0x530560=_0x5680a3['enableEmailPreview'];_0x491807[_0xd236('0x23')](function(_0xa3995f){_0x5bb55c['push'](updateMailInteraction(_0xa3995f,_0x43ba74,_0x1d9e32,_0x530560));});return BPromise['all'](_0x5bb55c);});});});})[_0xd236('0x1a')](function(_0x175b35){_0x35b950[_0xd236('0xa7')]=_0x175b35;return _0x35b950;})[_0xd236('0x1a')](respondWithFilteredResult(_0x3c74f1,_0x222495))[_0xd236('0x2b')](handleError(_0x3c74f1,null));};exports[_0xd236('0xa8')]=function(_0x36697b,_0x4710d8){var _0x399309={'raw':![],'where':{'id':_0x36697b['params']['id']}},_0x3889a3={};_0x3889a3[_0xd236('0x36')]=_[_0xd236('0x38')](db[_0xd236('0x86')][_0xd236('0x34')]);_0x3889a3[_0xd236('0x37')]=_[_0xd236('0x38')](_0x36697b[_0xd236('0x37')]);_0x3889a3['filters']=_[_0xd236('0x39')](_0x3889a3[_0xd236('0x36')],_0x3889a3['query']);_0x399309[_0xd236('0x3a')]=_[_0xd236('0x39')](_0x3889a3[_0xd236('0x36')],qs[_0xd236('0xa9')](_0x36697b[_0xd236('0x37')][_0xd236('0xa9')]));_0x399309[_0xd236('0x3a')]=_0x399309[_0xd236('0x3a')][_0xd236('0x54')]?_0x399309[_0xd236('0x3a')]:_0x3889a3[_0xd236('0x36')];if(_0x36697b[_0xd236('0x37')][_0xd236('0xaa')]){_0x399309[_0xd236('0xab')]=[{'all':!![]}];}_0x399309=_[_0xd236('0xac')]({},_0x399309,_0x36697b['options']);return db[_0xd236('0x86')][_0xd236('0x5d')](_0x399309)[_0xd236('0x1a')](handleEntityNotFound(_0x4710d8,null))[_0xd236('0x1a')](respondWithResult(_0x4710d8,null))[_0xd236('0x2b')](handleError(_0x4710d8,null));};exports[_0xd236('0xad')]=function(_0x2577d0,_0x3e9162){return db[_0xd236('0x86')][_0xd236('0xad')](_0x2577d0['body'],{})['then'](respondWithResult(_0x3e9162,0xc9))[_0xd236('0x2b')](handleError(_0x3e9162,null));};exports[_0xd236('0x19')]=function(_0x3c3e73,_0x3d0378){if(_0x3c3e73[_0xd236('0xae')]['id']){delete _0x3c3e73[_0xd236('0xae')]['id'];}return db[_0xd236('0x86')]['find']({'where':{'id':_0x3c3e73[_0xd236('0xaf')]['id']}})[_0xd236('0x1a')](handleEntityNotFound(_0x3d0378,null))['then'](saveUpdates(_0x3c3e73['body'],null))[_0xd236('0x1a')](respondWithResult(_0x3d0378,null))[_0xd236('0x2b')](handleError(_0x3d0378,null));};exports[_0xd236('0x1b')]=function(_0x592eae,_0x2c4598){return db['MailInteraction'][_0xd236('0x5d')]({'where':{'id':_0x592eae[_0xd236('0xaf')]['id']}})[_0xd236('0x1a')](handleEntityNotFound(_0x2c4598,null))[_0xd236('0x1a')](removeEntity(_0x2c4598,null))[_0xd236('0x2b')](handleError(_0x2c4598,null));};exports['describe']=function(_0x591378,_0x1f1fcb){return db[_0xd236('0x86')][_0xd236('0xb0')]()[_0xd236('0x1a')](respondWithResult(_0x1f1fcb,null))['catch'](handleError(_0x1f1fcb,null));};exports[_0xd236('0xb1')]=function(_0x192a5a,_0x1cb3c8){return db[_0xd236('0x25')][_0xd236('0x5d')]({'where':{'id':_0x192a5a[_0xd236('0xaf')]['id']}})[_0xd236('0x1a')](handleEntityNotFound(_0x1cb3c8,null))[_0xd236('0x1a')](function(_0x2748d9){if(_0x2748d9){return _0x2748d9[_0xd236('0xb1')](_0x192a5a[_0xd236('0xae')][_0xd236('0xb2')],_[_0xd236('0xb3')](_0x192a5a[_0xd236('0xae')],[_0xd236('0xb2'),'id'])||{});}})['then'](respondWithResult(_0x1cb3c8,null))[_0xd236('0x2b')](handleError(_0x1cb3c8,null));};exports[_0xd236('0xb4')]=function(_0x5c2fbd,_0x2d0759){var _0x1d4aac={'raw':![],'where':{}};var _0x35db65={};var _0x5580aa={'count':0x0,'rows':[]};return db[_0xd236('0x86')]['findOne']({'where':{'id':_0x5c2fbd[_0xd236('0xaf')]['id']}})['then'](handleEntityNotFound(_0x2d0759,null))[_0xd236('0x1a')](function(_0x275928){if(_0x275928){_0x35db65[_0xd236('0x36')]=_[_0xd236('0x38')](db[_0xd236('0x25')][_0xd236('0x34')]);_0x35db65[_0xd236('0x37')]=_['keys'](_0x5c2fbd['query']);_0x35db65[_0xd236('0xb5')]=_[_0xd236('0x39')](_0x35db65[_0xd236('0x36')],_0x35db65[_0xd236('0x37')]);_0x1d4aac[_0xd236('0x3a')]=_[_0xd236('0x39')](_0x35db65[_0xd236('0x36')],qs[_0xd236('0xa9')](_0x5c2fbd['query'][_0xd236('0xa9')]));_0x1d4aac[_0xd236('0x3a')]=_0x1d4aac[_0xd236('0x3a')][_0xd236('0x54')]?_0x1d4aac[_0xd236('0x3a')]:_0x35db65[_0xd236('0x36')];if(!_0x5c2fbd[_0xd236('0x37')][_0xd236('0x3b')]('nolimit')){_0x1d4aac['limit']=qs[_0xd236('0x16')](_0x5c2fbd[_0xd236('0x37')]['limit']);_0x1d4aac['offset']=qs['offset'](_0x5c2fbd[_0xd236('0x37')][_0xd236('0x14')]);}_0x1d4aac[_0xd236('0x7d')]=qs['sort'](_0x5c2fbd[_0xd236('0x37')]['sort']);_0x1d4aac[_0xd236('0x3e')]=qs[_0xd236('0xb5')](_[_0xd236('0xb6')](_0x5c2fbd['query'],_0x35db65[_0xd236('0xb5')]));_0x1d4aac['where'][_0xd236('0xb7')]=_0x275928['id'];if(_0x5c2fbd[_0xd236('0x37')][_0xd236('0x72')]){_0x1d4aac[_0xd236('0x3e')]=_[_0xd236('0xac')](_0x1d4aac[_0xd236('0x3e')],{'$or':_[_0xd236('0x1e')](_0x1d4aac['attributes'],function(_0x2ccb10){var _0x25d144={};_0x25d144[_0x2ccb10]={'$like':'%'+_0x5c2fbd[_0xd236('0x37')]['filter']+'%'};return _0x25d144;})});}if(_0x5c2fbd[_0xd236('0x37')]['$gte']){var _0x3ca52a=_0x5c2fbd[_0xd236('0x37')][_0xd236('0x6a')][_0xd236('0x22')](',');var _0x72c65b={};_0x72c65b[_0x3ca52a[0x0]]={'$gte':moment(_0x3ca52a[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x1d4aac[_0xd236('0x3e')]=_[_0xd236('0xac')](_0x1d4aac[_0xd236('0x3e')],_0x72c65b);}_0x1d4aac=_[_0xd236('0xac')]({},_0x1d4aac,_0x5c2fbd[_0xd236('0xb8')]);return db['MailMessage'][_0xd236('0x17')]({'where':_0x1d4aac[_0xd236('0x3e')]})['then'](function(_0x4a973e){_0x5580aa[_0xd236('0x17')]=_0x4a973e;if(_0x5c2fbd['query'][_0xd236('0xaa')]){_0x1d4aac[_0xd236('0xab')]=[{'all':!![]}];}return db[_0xd236('0x25')][_0xd236('0xb9')](_0x1d4aac);})[_0xd236('0x1a')](function(_0x517093){if(_0x5c2fbd[_0xd236('0x37')][_0xd236('0xba')]===_0xd236('0xbb')){for(var _0x49db9b=0x0;_0x49db9b<_0x517093[_0xd236('0x54')];_0x49db9b++){_0x517093[_0x49db9b][_0xd236('0xae')]=juice(_0x517093[_0x49db9b][_0xd236('0xae')]);}}_0x5580aa[_0xd236('0xa7')]=_0x517093;return _0x5580aa;});}})[_0xd236('0x1a')](respondWithFilteredResult(_0x2d0759,_0x1d4aac))[_0xd236('0x2b')](handleError(_0x2d0759,null));};exports[_0xd236('0xbc')]=function(_0x3d5640,_0x5675cd){return db[_0xd236('0x86')][_0xd236('0x5d')]({'where':{'id':_0x3d5640[_0xd236('0xaf')]['id']}})[_0xd236('0x1a')](handleEntityNotFound(_0x5675cd,null))[_0xd236('0x1a')](function(_0x417baf){if(_0x417baf){return _0x417baf[_0xd236('0xbd')](_0x3d5640['body']['ids'],_[_0xd236('0xb3')](_0x3d5640[_0xd236('0xae')],[_0xd236('0xb2'),'id'])||{})[_0xd236('0xbe')](function(){return db[_0xd236('0x62')]['findAll']({'attributes':['id',_0xd236('0x1c'),_0xd236('0x41')],'where':{'id':_0x3d5640[_0xd236('0xae')][_0xd236('0xb2')]}});})[_0xd236('0x1a')](function(_0x463d8e){socket[_0xd236('0xbf')]('mailInteractionTags:save',{'id':Number(_0x3d5640[_0xd236('0xaf')]['id']),'tags':_0x463d8e||[]});return{'id':Number(_0x3d5640[_0xd236('0xaf')]['id']),'tags':_0x463d8e||[]};});}})[_0xd236('0x1a')](respondWithResult(_0x5675cd,null))[_0xd236('0x2b')](handleError(_0x5675cd,null));};exports[_0xd236('0xc0')]=function(_0x79f609,_0x20186a){return db['MailInteraction'][_0xd236('0x5d')]({'where':{'id':_0x79f609[_0xd236('0xaf')]['id']}})[_0xd236('0x1a')](handleEntityNotFound(_0x20186a,null))[_0xd236('0x1a')](function(_0x4af2c5){if(_0x4af2c5){return _0x4af2c5['removeTags'](_0x79f609['query'][_0xd236('0xb2')]);}})[_0xd236('0x1a')](respondWithStatusCode(_0x20186a,null))['catch'](handleError(_0x20186a,null));};exports[_0xd236('0xc1')]=function(_0x7b1bf1,_0x3a48ca){var _0x3ff47e=moment()['unix']()['toString']();var _0x5575cd=path[_0xd236('0xc2')](config[_0xd236('0xc3')],_0xd236('0xc4'),_0xd236('0xc5'),'tmp');var _0xd4b52d=path['join'](config['root'],_0xd236('0xc4'),'files',_0xd236('0xc6'));var _0x463764=path['join'](_0x5575cd,_0x3ff47e);var _0x3f72ad=util['format']('transcript-%d-%s.zip',_0x7b1bf1[_0xd236('0xaf')]['id'],_0x3ff47e);var _0x922e0e=path[_0xd236('0xc2')](_0x5575cd,_0x3f72ad);var _0x4f4996=[];if(_0x7b1bf1['query'][_0xd236('0xc6')]){_0x4f4996[_0xd236('0x24')]({'model':db[_0xd236('0xc7')],'as':'Attachments','raw':!![]});}var _0x1a6e2f=[{'model':db[_0xd236('0x25')],'as':_0xd236('0xc8'),'attributes':['id',_0xd236('0xae'),_0xd236('0x42'),'to','cc','bcc',_0xd236('0xc9'),_0xd236('0xca')],'where':{'secret':![]},'order':qs[_0xd236('0x3d')]('id'),'include':_0x4f4996}];return db[_0xd236('0x86')][_0xd236('0x5d')]({'where':{'id':_0x7b1bf1['params']['id']},'include':_0x1a6e2f})[_0xd236('0x1a')](handleEntityNotFound(_0x3a48ca,null))[_0xd236('0x1a')](function(_0x586d6e){if(_0x586d6e&&_0x586d6e[_0xd236('0xc8')]){var _0x5beaee=_0x586d6e[_0xd236('0xcb')]({'plain':!![]});fs[_0xd236('0xcc')](_0x463764);return BPromise[_0xd236('0xcd')](_0x5beaee['Messages'],function(_0x16f7cb,_0x3c1ff1){var _0xa831ea={'from':_0x16f7cb['from'],'to':_0x16f7cb['to'],'subject':_0x16f7cb[_0xd236('0xc9')],'html':htmlEntities[_0xd236('0xce')](_0x16f7cb[_0xd236('0xae')]),'headers':{'Date':moment(_0x16f7cb[_0xd236('0xca')])['format']('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x16f7cb['cc']){_0xa831ea[_0xd236('0xcf')]['Cc']=_0x16f7cb['cc'];}if(_0x16f7cb[_0xd236('0xd0')]){_0xa831ea[_0xd236('0xcf')]['Bcc']=_0x16f7cb[_0xd236('0xd0')];}return new BPromise(function(_0x22ace9,_0x2c49f7){if(_0x16f7cb[_0xd236('0xd1')]){for(var _0x51f67e=0x0;_0x51f67e<_0x16f7cb[_0xd236('0xd1')]['length'];_0x51f67e++){var _0x3d7dc0=_0x16f7cb[_0xd236('0xd1')][_0x51f67e];var _0x1bfb28=path[_0xd236('0xc2')](_0xd4b52d,_0x3d7dc0[_0xd236('0xd2')]);if(fs['existsSync'](_0x1bfb28)){_0xa831ea[_0xd236('0xc6')][_0xd236('0x24')]({'name':_0x3d7dc0[_0xd236('0x1c')],'contentType':_0x3d7dc0['type'],'data':fs[_0xd236('0xd3')](_0x1bfb28)});}}}emlformat[_0xd236('0xd4')](_0xa831ea,function(_0x260a1d,_0x14692a){if(_0x260a1d)return _0x2c49f7(_0x260a1d);fs[_0xd236('0xd5')](path[_0xd236('0xc2')](_0x463764,util[_0xd236('0xd6')](_0xd236('0xd7'),_0x3c1ff1)),_0x14692a);return _0x22ace9(_0x14692a);});});})[_0xd236('0x1a')](function(){return new BPromise(function(_0x8caef1,_0x247f4a){zipdir(_0x463764,{'saveTo':_0x922e0e},function(_0x4d3958,_0x11045c){if(_0x4d3958)return _0x247f4a(_0x4d3958);return _0x8caef1(_0x11045c);});})['then'](function(){return new BPromise(function(_0x8e697f,_0x40360f){rimraf(_0x463764,function(_0x464e3b){if(_0x464e3b)_0x40360f(_0x464e3b);return _0x8e697f();});});})[_0xd236('0x1a')](function(){return _0x3a48ca['download'](_0x922e0e,_0x3f72ad,function(_0x5d8108){if(!_0x5d8108)fs[_0xd236('0xd8')](_0x922e0e);});});});}else{return _0x3a48ca[_0xd236('0x10')](0xc8);}})[_0xd236('0x2b')](handleError(_0x3a48ca,null));};
\ No newline at end of file