Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index dbad0ab..c1b5376 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6b1b=['unix','join','root','files','tmp','transcript-%d-%s.zip','attachments','Attachment','bcc','subject','Messages','get','mkdirSync','each','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','Attachments','basename','existsSync','readFileSync','build','message%d.eml','unlinkSync','sendStatus','rimraf','zip-dir','moment','util','path','lodash','squel','juice','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','html-entities','redis','socket.io-emitter','status','json','offset','undefined','limit','count','update','then','destroy','error','stack','name','send','Users','TagIds','Tags','split','push','MailMessage','out','plainBody','-id','trimStart','catch','waiting','talking','answered','UserId','closed','unmanaged','total','index','map','MailInteraction','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','field','color','tools_tags','select','u.fullname','ui.MailInteractionId','from','left_join','u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','users','mail_accounts','a.id\x20=\x20i.MailAccountId','mail_messages','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','expr','parseSearch','sqlOperator','find','unreadMessages','value','`\x20=\x200','`\x20>\x200','Contact','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','start','Tag','forEach','union','operator','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','end','some','compact','isEmpty','concat','createdAt','$gte','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','having','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','t.id\x20IN\x20?','resolve','MailAccountId','i.MailAccountId\x20IS\x20NOT\x20NULL','user','role','getMailAccounts','i.MailAccountId\x20IS\x20NULL','i.MailAccountId\x20IN\x20?','agent','sequelize','toString','keyBy','merge','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.createdAt','i.updatedAt','i.closedAt','i.lastMsgDirection','i.subject','i.disposition','i.thirdDisposition','i.substatus','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.mobile','c.fax','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','MailInteractionId','findOne','enableEmailPreview','all','rows','params','include','options','create','body','describe','addMessage','ids','omit','getMessages','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','inlineCss','true','addTags','setTags','spread','removeTags','download'];(function(_0x1c8c28,_0x3ee093){var _0x1f59b4=function(_0x29bcc0){while(--_0x29bcc0){_0x1c8c28['push'](_0x1c8c28['shift']());}};_0x1f59b4(++_0x3ee093);}(_0x6b1b,0x1e7));var _0xb6b1=function(_0x4e6ae6,_0x49dba6){_0x4e6ae6=_0x4e6ae6-0x0;var _0x23c108=_0x6b1b[_0x4e6ae6];return _0x23c108;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xb6b1('0x0'));var zipdir=require(_0xb6b1('0x1'));var moment=require(_0xb6b1('0x2'));var BPromise=require('bluebird');var util=require(_0xb6b1('0x3'));var path=require(_0xb6b1('0x4'));var fs=require('fs');var _=require(_0xb6b1('0x5'));var squel=require(_0xb6b1('0x6'));var juice=require(_0xb6b1('0x7'));var Redis=require(_0xb6b1('0x8'));var qs=require(_0xb6b1('0x9'));var as=require(_0xb6b1('0xa'));var logger=require(_0xb6b1('0xb'))(_0xb6b1('0xc'));var config=require(_0xb6b1('0xd'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0xb6b1('0xe'));config['redis']=_['defaults'](config[_0xb6b1('0xf')],{'host':'localhost','port':0x18eb});var socket=require(_0xb6b1('0x10'))(new Redis(config['redis']));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x593218,_0x1f8f10){_0x1f8f10=_0x1f8f10||0xcc;return function(_0x1cec84){if(_0x1cec84){return _0x593218['sendStatus'](_0x1f8f10);}return _0x593218[_0xb6b1('0x11')](_0x1f8f10)['end']();};}function respondWithResult(_0x5c5837,_0x406dce){_0x406dce=_0x406dce||0xc8;return function(_0x2e5256){if(_0x2e5256){return _0x5c5837[_0xb6b1('0x11')](_0x406dce)[_0xb6b1('0x12')](_0x2e5256);}};}function respondWithFilteredResult(_0x23881d,_0x18f6b5){return function(_0x360fc7){if(_0x360fc7){var _0x429d0d=typeof _0x18f6b5[_0xb6b1('0x13')]===_0xb6b1('0x14')&&typeof _0x18f6b5[_0xb6b1('0x15')]===_0xb6b1('0x14');var _0x4f770a=_0x360fc7['count'];var _0x513207=_0x429d0d?0x0:_0x18f6b5['offset'];var _0xee229d=_0x429d0d?_0x360fc7[_0xb6b1('0x16')]:_0x18f6b5[_0xb6b1('0x13')]+_0x18f6b5[_0xb6b1('0x15')];var _0x32e395;if(_0xee229d>=_0x4f770a){_0xee229d=_0x4f770a;_0x32e395=0xc8;}else{_0x32e395=0xce;}_0x23881d[_0xb6b1('0x11')](_0x32e395);return _0x23881d['set']('Content-Range',_0x513207+'-'+_0xee229d+'/'+_0x4f770a)[_0xb6b1('0x12')](_0x360fc7);}return null;};}function saveUpdates(_0x15456d){return function(_0x16d969){if(_0x16d969){return _0x16d969[_0xb6b1('0x17')](_0x15456d)[_0xb6b1('0x18')](function(_0x3fc9b1){return _0x3fc9b1;});}return null;};}function removeEntity(_0x5ba14d){return function(_0x4e132a){if(_0x4e132a){return _0x4e132a[_0xb6b1('0x19')]()[_0xb6b1('0x18')](function(){_0x5ba14d['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xfc247a){return function(_0x5c8529){if(!_0x5c8529){_0xfc247a['sendStatus'](0x194);}return _0x5c8529;};}function handleError(_0x232157,_0x2086ea){_0x2086ea=_0x2086ea||0x1f4;return function(_0x36ac63){logger[_0xb6b1('0x1a')](_0x36ac63[_0xb6b1('0x1b')]);if(_0x36ac63[_0xb6b1('0x1c')]){delete _0x36ac63[_0xb6b1('0x1c')];}_0x232157[_0xb6b1('0x11')](_0x2086ea)[_0xb6b1('0x1d')](_0x36ac63);};}function getInteractionUsers(_0x20066f,_0x5069cd){return new BPromise(function(_0x214cd0,_0x4f1e2e){try{if(_0x5069cd[_0x20066f['id']]){_0x20066f[_0xb6b1('0x1e')]=_['map'](_0x5069cd[_0x20066f['id']],function(_0xdbcb77){return{'id':_0xdbcb77['id'],'fullname':_0xdbcb77['fullname']};});}}catch(_0x35a567){_0x4f1e2e(_0x35a567);}_0x214cd0(_0x20066f);});}function getInteractionTags(_0x387603,_0xac4256){return new BPromise(function(_0x178401,_0x13e841){try{if(_0x387603[_0xb6b1('0x1f')]){_0x387603[_0xb6b1('0x20')]=[];_0x387603[_0xb6b1('0x1f')][_0xb6b1('0x21')](',')['forEach'](function(_0xf40426){_0x387603['Tags'][_0xb6b1('0x22')](_0xac4256[_0xf40426]);});}delete _0x387603[_0xb6b1('0x1f')];}catch(_0x367d66){_0x13e841(_0x367d66);}_0x178401(_0x387603);});}function getLastMessageText(_0x3f8849){return new BPromise(function(_0x136fe5,_0x12f369){return db[_0xb6b1('0x23')]['findOne']({'where':{'$and':[{'MailInteractionId':_0x3f8849['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xb6b1('0x24')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xb6b1('0x25')],'order':_0xb6b1('0x26'),'raw':!![]})['then'](function(_0x22beb9){if(_0x22beb9&&_0x22beb9[_0xb6b1('0x25')]){_0x3f8849['lastMsgText']=_[_0xb6b1('0x27')](_0x22beb9[_0xb6b1('0x25')]);}_0x136fe5(_0x3f8849);})[_0xb6b1('0x28')](function(_0x21bfac){_0x12f369(_0x21bfac);});});}function updateMailInteraction(_0x3ead6b,_0x326c5f,_0x4d29e4,_0x3cca75){return new BPromise(function(_0xff1d43,_0x4abe40){return getInteractionUsers(_0x3ead6b,_0x4d29e4)[_0xb6b1('0x18')](function(_0x4e11a1){return getInteractionTags(_0x4e11a1,_0x326c5f);})[_0xb6b1('0x18')](function(_0x242ec3){return getStateInteraction(_0x242ec3);})[_0xb6b1('0x18')](function(_0x4cad81){if(_0x3cca75){_0xff1d43(getLastMessageText(_0x4cad81));}else{_0xff1d43(_0x4cad81);}})[_0xb6b1('0x28')](function(_0x2dd9e2){_0x4abe40(_0x2dd9e2);});});}function getStateInteraction(_0x59efdc){return new BPromise(function(_0x203d8e){_0x59efdc[_0xb6b1('0x29')]=0x0;_0x59efdc[_0xb6b1('0x2a')]=0x0;_0x59efdc[_0xb6b1('0x2b')]=0x0;_0x59efdc['unmanaged']=0x0;_0x59efdc['total']=0x0;if(!_0x59efdc['closed']&&!_0x59efdc[_0xb6b1('0x2c')]){_0x59efdc[_0xb6b1('0x29')]+=0x1;}if(!_0x59efdc[_0xb6b1('0x2d')]&&_0x59efdc[_0xb6b1('0x2c')]){_0x59efdc[_0xb6b1('0x2a')]+=0x1;if(_0x59efdc[_0xb6b1('0x29')]){_0x59efdc[_0xb6b1('0x29')]-=0x1;}}if(_0x59efdc[_0xb6b1('0x2d')]&&_0x59efdc[_0xb6b1('0x2c')]){_0x59efdc[_0xb6b1('0x2b')]+=0x1;if(_0x59efdc[_0xb6b1('0x2a')]){_0x59efdc[_0xb6b1('0x2a')]-=0x1;}}if(_0x59efdc['closed']&&!_0x59efdc[_0xb6b1('0x2c')]){_0x59efdc[_0xb6b1('0x2e')]+=0x1;if(_0x59efdc[_0xb6b1('0x29')]){_0x59efdc[_0xb6b1('0x29')]-=0x1;}}_0x59efdc[_0xb6b1('0x2f')]+=0x1;_0x203d8e(_0x59efdc);});}exports[_0xb6b1('0x30')]=function(_0xfe126,_0x3df192){var _0x33dc30={},_0x276801={},_0x44a61a={'count':0x0,'rows':[]};var _0x56470a=_[_0xb6b1('0x31')](db[_0xb6b1('0x32')][_0xb6b1('0x33')],function(_0x2d6b2b){return{'name':_0x2d6b2b[_0xb6b1('0x34')],'type':_0x2d6b2b[_0xb6b1('0x35')][_0xb6b1('0x36')]};});_0x276801[_0xb6b1('0x37')]=_['map'](_0x56470a,'name');_0x276801[_0xb6b1('0x38')]=_[_0xb6b1('0x39')](_0xfe126[_0xb6b1('0x38')]);_0x276801['filters']=_[_0xb6b1('0x3a')](_0x276801[_0xb6b1('0x37')],_0x276801[_0xb6b1('0x38')]);_0x33dc30[_0xb6b1('0x3b')]=_[_0xb6b1('0x3a')](_0x276801[_0xb6b1('0x37')],qs[_0xb6b1('0x3c')](_0xfe126[_0xb6b1('0x38')]['fields']));_0x33dc30[_0xb6b1('0x3b')]=_0x33dc30['attributes'][_0xb6b1('0x3d')]?_0x33dc30[_0xb6b1('0x3b')]:_0x276801[_0xb6b1('0x37')];if(!_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x3e')](_0xb6b1('0x3f'))){_0x33dc30['limit']=qs[_0xb6b1('0x15')](_0xfe126[_0xb6b1('0x38')]['limit']);_0x33dc30[_0xb6b1('0x13')]=qs['offset'](_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x13')]);}_0x33dc30[_0xb6b1('0x40')]=qs[_0xb6b1('0x41')](_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x41')]);_0x33dc30[_0xb6b1('0x42')]=qs[_0xb6b1('0x43')](_[_0xb6b1('0x44')](_0xfe126['query'],_0x276801['filters']),_0x56470a);var _0x3826bd=[];var _0x2c00fb=squel['select']()[_0xb6b1('0x45')]('id')[_0xb6b1('0x45')](_0xb6b1('0x1c'))[_0xb6b1('0x45')](_0xb6b1('0x46'))['from'](_0xb6b1('0x47'));var _0x1f4881=squel[_0xb6b1('0x48')]()[_0xb6b1('0x45')]('u.id')['field'](_0xb6b1('0x49'))['field'](_0xb6b1('0x4a'))[_0xb6b1('0x4b')]('user_has_mail_interactions','ui')[_0xb6b1('0x4c')]('users','u',_0xb6b1('0x4d'));var _0x7d4763=squel[_0xb6b1('0x48')]()[_0xb6b1('0x4b')](_0xb6b1('0x4e'),'i')[_0xb6b1('0x4c')](_0xb6b1('0x4f'),'c',_0xb6b1('0x50'))[_0xb6b1('0x4c')](_0xb6b1('0x51'),'o','o.id\x20=\x20i.UserId')[_0xb6b1('0x4c')](_0xb6b1('0x52'),'a',_0xb6b1('0x53'))[_0xb6b1('0x4c')](_0xb6b1('0x54'),'me',_0xb6b1('0x55'))[_0xb6b1('0x4c')](_0xb6b1('0x56'),'it',_0xb6b1('0x57'))['left_join'](_0xb6b1('0x47'),'t','t.id\x20=\x20it.TagId');var _0x5adb1c=squel[_0xb6b1('0x58')]();var _0x2123f5=[];var _0x5be7bf=squel[_0xb6b1('0x58')]();var _0x323231;if(_0xfe126[_0xb6b1('0x38')]['search']){_0x323231=as[_0xb6b1('0x59')](_0xfe126['query']['search']);var _0x239de5=_0x323231[_0xb6b1('0x5a')];for(var _0x49eaf4=0x0;_0x49eaf4<_0x323231['conditions']['length'];_0x49eaf4++){var _0x2e7af7=_0x323231['conditions'][_0x49eaf4];var _0x54c88f='i';var _0x47e64e=_[_0xb6b1('0x5b')](_0x56470a,[_0xb6b1('0x1c'),_0x2e7af7[_0xb6b1('0x45')]]);if(!_0x47e64e){switch(_0x2e7af7[_0xb6b1('0x45')]){case _0xb6b1('0x5c'):if(_0x2e7af7[_0xb6b1('0x5d')]==0x1){_0x7d4763['having']('`'+_0x2e7af7[_0xb6b1('0x45')]+_0xb6b1('0x5e'));}else{_0x7d4763['having']('`'+_0x2e7af7['field']+_0xb6b1('0x5f'));}break;case _0xb6b1('0x60'):if(_0x2e7af7['operator']==='$substring'){if(_0x2e7af7[_0xb6b1('0x5d')]['split']('\x20')[_0xb6b1('0x3d')]>0x1){_0x5adb1c[_0x239de5](_0xb6b1('0x61'),qs['getFullTextValue'](_0x2e7af7[_0xb6b1('0x5d')]),null);}else{var _0x30f8e5='%'+_0x2e7af7[_0xb6b1('0x5d')]+'%';_0x5adb1c[_0x239de5](_0xb6b1('0x62'),_0x30f8e5,_0x30f8e5,_0x30f8e5);}}else{_0x47e64e=_[_0xb6b1('0x5b')](_0x56470a,[_0xb6b1('0x1c'),_0xb6b1('0x63')]);_0x2e7af7[_0xb6b1('0x45')]=_0xb6b1('0x63');_0x55f565=as[_0xb6b1('0x64')](_0x54c88f,_0x47e64e['type'],_0x2e7af7);_0x5adb1c[_0x239de5](_0x55f565[_0xb6b1('0x65')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x66')],_0x55f565[_0xb6b1('0x5d')]['end']);}break;case _0xb6b1('0x67'):var _0xce50c3=_0x2e7af7[_0xb6b1('0x5d')][_0xb6b1('0x21')](',')[_0xb6b1('0x31')](function(_0x676c89){return Number(_0x676c89);});_0xce50c3[_0xb6b1('0x68')](function(_0x4e34ef){_0x5be7bf['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x4e34ef+',%');});_0x2123f5=_[_0xb6b1('0x69')](_0x2123f5,_0xce50c3);break;case'User':if(_0x2e7af7[_0xb6b1('0x6a')]===_0xb6b1('0x6b')){_0x5adb1c[_0x239de5](_0xb6b1('0x6c'),'%'+_0x2e7af7['value']+'%',null);}else{_0x47e64e=_[_0xb6b1('0x5b')](_0x56470a,[_0xb6b1('0x1c'),_0xb6b1('0x2c')]);_0x2e7af7[_0xb6b1('0x45')]=_0xb6b1('0x2c');_0x55f565=as['buildExpression'](_0x54c88f,_0x47e64e['type'],_0x2e7af7);_0x5adb1c[_0x239de5](_0x55f565[_0xb6b1('0x65')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x66')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x6d')]);}break;case _0xb6b1('0x25'):_0x55f565=as[_0xb6b1('0x64')]('me',null,_0x2e7af7);_0x5adb1c[_0x239de5](_0x55f565[_0xb6b1('0x65')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x66')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x6d')]);break;}}else{var _0x55f565=as[_0xb6b1('0x64')](_0x54c88f,_0x47e64e['type'],_0x2e7af7);_0x5adb1c[_0x239de5](_0x55f565[_0xb6b1('0x65')],_0x55f565[_0xb6b1('0x5d')][_0xb6b1('0x66')],_0x55f565['value'][_0xb6b1('0x6d')]);}}}else{var _0x4c795a=_(_0xfe126['query'])[_0xb6b1('0x39')]()['map'](function(_0x462175){return _[_0xb6b1('0x6e')](_0x56470a,['name',_0x462175])?_0x462175:undefined;})[_0xb6b1('0x6f')]()['value']();if(!_[_0xb6b1('0x70')](_0x4c795a)){_0x4c795a[_0xb6b1('0x68')](function(_0x2b280e){if(_0x2b280e==='MailAccountId'){_0x7d4763[_0xb6b1('0x42')]('i.MailAccountId\x20IN\x20?',[][_0xb6b1('0x71')](_0xfe126[_0xb6b1('0x38')][_0x2b280e]));}else if(_0x2b280e===_0xb6b1('0x72')){var _0xa740a5=JSON['parse'](_0xfe126[_0xb6b1('0x38')][_0x2b280e])[_0xb6b1('0x73')];var _0x3e663d=JSON[_0xb6b1('0x74')](_0xfe126[_0xb6b1('0x38')][_0x2b280e])[_0xb6b1('0x75')];_0x7d4763['where'](_0xb6b1('0x76'),_0xa740a5,_0x3e663d);}else{if(_0xfe126[_0xb6b1('0x38')][_0x2b280e]===_0xb6b1('0x77')){_0x7d4763[_0xb6b1('0x42')]('i.'+_0x2b280e+'\x20IS\x20NULL');}else{_0x7d4763[_0xb6b1('0x42')]('i.'+_0x2b280e+_0xb6b1('0x78'),_0xfe126['query'][_0x2b280e]);}}});}if(_0xfe126['query']['read']){if(_0xfe126['query'][_0xb6b1('0x79')]==0x1){_0x7d4763[_0xb6b1('0x7a')](_0xb6b1('0x7b'));}else{_0x7d4763[_0xb6b1('0x7a')](_0xb6b1('0x7c'));}}if(_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x7d')]){_0x2123f5=_['isArray'](_0xfe126[_0xb6b1('0x38')]['tag'])?_0xfe126['query'][_0xb6b1('0x7d')]:new Array(_0xfe126[_0xb6b1('0x38')]['tag']);_0x2123f5[_0xb6b1('0x68')](function(_0x394b82){_0x5be7bf['or'](_0xb6b1('0x7e'),'%,'+_0x394b82+',%');});}if(_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x7f')]){var _0x5516c7=_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x7f')]['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xb6b1('0x80')](_0x5516c7)){_0x5adb1c['or'](_0xb6b1('0x81'),_0x5516c7+'%');}else if(qs[_0xb6b1('0x82')](_0x5516c7)){_0x5adb1c['or'](_0xb6b1('0x83'),_0x5516c7+'%');}else{_0x5adb1c['or'](_0xb6b1('0x84'),qs[_0xb6b1('0x85')](_0x5516c7))['or'](_0xb6b1('0x86'),qs[_0xb6b1('0x85')](_0x5516c7));}}}_0x7d4763[_0xb6b1('0x42')](_0x5adb1c);_0x7d4763['group'](_0xb6b1('0x87'));var _0x57fd39={'type':db[_0xb6b1('0x88')][_0xb6b1('0x89')][_0xb6b1('0x8a')],'raw':!![]};var _0x500945=_0x7d4763[_0xb6b1('0x8b')]();_0x500945[_0xb6b1('0x45')]('i.id');_0x500945[_0xb6b1('0x45')](_0xb6b1('0x8c'),'unreadMessages');if(_0x33dc30[_0xb6b1('0x40')]){_0x33dc30['order'][_0xb6b1('0x68')](function(_0x58da6c){var _0x300508=_0x58da6c[0x0]===_0xb6b1('0x8d')?_0x58da6c[0x0]:'i.'+_0x58da6c[0x0];_0x7d4763[_0xb6b1('0x40')](_0x300508,_0x58da6c[0x1]===_0xb6b1('0x8e')?![]:!![]);});}if(!_[_0xb6b1('0x70')](_0x2123f5)){_0x7d4763['having'](_0x5be7bf);_0x500945[_0xb6b1('0x42')](_0xb6b1('0x8f'),_0x2123f5);}BPromise[_0xb6b1('0x90')]()[_0xb6b1('0x18')](function(){if(!_0x323231){if(_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x91')])return;_0x500945[_0xb6b1('0x42')](_0xb6b1('0x92'));_0x7d4763[_0xb6b1('0x42')](_0xb6b1('0x92'));return;}if(_0xfe126[_0xb6b1('0x93')][_0xb6b1('0x94')]!=='agent')return;return _0xfe126[_0xb6b1('0x93')][_0xb6b1('0x95')]({'attributes':['id'],'raw':!![]})['then'](function(_0x22ebac){if(_[_0xb6b1('0x70')](_0x22ebac)){_0x500945['where'](_0xb6b1('0x96'));_0x7d4763['where'](_0xb6b1('0x96'));}else{_0x500945['where'](_0xb6b1('0x97'),_['map'](_0x22ebac,'id'));_0x7d4763['where'](_0xb6b1('0x97'),_[_0xb6b1('0x31')](_0x22ebac,'id'));}});})['then'](function(){if(_0xfe126[_0xb6b1('0x93')][_0xb6b1('0x94')]===_0xb6b1('0x98')&&!_0x323231&&!_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x91')])return[];return db[_0xb6b1('0x99')][_0xb6b1('0x38')](_0x500945[_0xb6b1('0x9a')](),_0x57fd39);})[_0xb6b1('0x18')](function(_0x267c1d){_0x44a61a[_0xb6b1('0x16')]=_0x267c1d[_0xb6b1('0x3d')];if(_0x44a61a['count']===0x0)return[];return db[_0xb6b1('0x99')][_0xb6b1('0x38')](_0x2c00fb[_0xb6b1('0x9a')](),_0x57fd39)[_0xb6b1('0x18')](function(_0x489898){_0x3826bd=_[_0xb6b1('0x9b')](_0x489898,'id');_0x57fd39=_[_0xb6b1('0x9c')](_0x57fd39,{'model':db[_0xb6b1('0x32')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0xfe126[_0xb6b1('0x38')][_0xb6b1('0x3c')]){_0x33dc30[_0xb6b1('0x3b')]['forEach'](function(_0x3954dd){_0x7d4763[_0xb6b1('0x45')]('i.'+_0x3954dd);});}else{_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0x8c'),_0xb6b1('0x5c'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0x9d'),_0xb6b1('0x9e'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0x9f'),_0xb6b1('0xa0'));_0x7d4763[_0xb6b1('0x45')]('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',_0xb6b1('0x8d'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0x87'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa1'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa2'));_0x7d4763[_0xb6b1('0x45')]('i.closed');_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa3'));_0x7d4763[_0xb6b1('0x45')]('i.attach');_0x7d4763[_0xb6b1('0x45')]('i.lastMsgAt');_0x7d4763['field'](_0xb6b1('0xa4'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa5'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa6'));_0x7d4763[_0xb6b1('0x45')]('i.secondDisposition');_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa7'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xa8'));_0x7d4763['field']('i.to');_0x7d4763[_0xb6b1('0x45')]('i.ContactId');_0x7d4763[_0xb6b1('0x45')]('i.MailAccountId');_0x7d4763[_0xb6b1('0x45')]('i.UserId');_0x7d4763['field'](_0xb6b1('0xa9'),_0xb6b1('0xaa'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xab'),_0xb6b1('0xac'));_0x7d4763['field'](_0xb6b1('0xad'),_0xb6b1('0xae'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xaf'),'Contact.phone');_0x7d4763[_0xb6b1('0x45')]('c.mobile',_0xb6b1('0xb0'));_0x7d4763['field'](_0xb6b1('0xb1'),'Contact.fax');_0x7d4763['field']('o.fullname','Owner.fullname');_0x7d4763[_0xb6b1('0x45')]('o.internal',_0xb6b1('0xb2'));_0x7d4763[_0xb6b1('0x45')](_0xb6b1('0xb3'),_0xb6b1('0x1f'));}if(_0x33dc30['limit'])_0x7d4763[_0xb6b1('0x15')](_0x33dc30[_0xb6b1('0x15')]);if(_0x33dc30['offset'])_0x7d4763['offset'](_0x33dc30['offset']);return db[_0xb6b1('0x99')]['query'](_0x7d4763[_0xb6b1('0x9a')](),_0x57fd39);})['then'](function(_0x3173d2){if(_0x3173d2['length']>0x0)_0x1f4881[_0xb6b1('0x42')]('ui.MailInteractionId\x20IN\x20?',_['map'](_0x3173d2,'id'));return db[_0xb6b1('0x99')][_0xb6b1('0x38')](_0x1f4881[_0xb6b1('0x9a')](),_0x57fd39)[_0xb6b1('0x18')](function(_0xb25776){var _0x2ca465=_['groupBy'](_0xb25776,_0xb6b1('0xb4'));var _0x1dcf93=[];return db['Setting'][_0xb6b1('0xb5')]({'attributes':[_0xb6b1('0xb6')],'raw':!![]})[_0xb6b1('0x18')](function(_0x5236a3){var _0x36f39e=_0x5236a3[_0xb6b1('0xb6')];_0x3173d2[_0xb6b1('0x68')](function(_0x2579c2){_0x1dcf93[_0xb6b1('0x22')](updateMailInteraction(_0x2579c2,_0x3826bd,_0x2ca465,_0x36f39e));});return BPromise[_0xb6b1('0xb7')](_0x1dcf93);});});});})[_0xb6b1('0x18')](function(_0x24c4db){_0x44a61a[_0xb6b1('0xb8')]=_0x24c4db;return _0x44a61a;})[_0xb6b1('0x18')](respondWithFilteredResult(_0x3df192,_0x33dc30))[_0xb6b1('0x28')](handleError(_0x3df192,null));};exports['show']=function(_0x59b19f,_0x54fb1e){var _0x160166={'raw':![],'where':{'id':_0x59b19f[_0xb6b1('0xb9')]['id']}},_0x535d47={};_0x535d47[_0xb6b1('0x37')]=_[_0xb6b1('0x39')](db[_0xb6b1('0x32')]['rawAttributes']);_0x535d47[_0xb6b1('0x38')]=_['keys'](_0x59b19f['query']);_0x535d47['filters']=_[_0xb6b1('0x3a')](_0x535d47[_0xb6b1('0x37')],_0x535d47[_0xb6b1('0x38')]);_0x160166[_0xb6b1('0x3b')]=_[_0xb6b1('0x3a')](_0x535d47[_0xb6b1('0x37')],qs[_0xb6b1('0x3c')](_0x59b19f['query']['fields']));_0x160166[_0xb6b1('0x3b')]=_0x160166['attributes'][_0xb6b1('0x3d')]?_0x160166['attributes']:_0x535d47['model'];if(_0x59b19f['query']['includeAll']){_0x160166[_0xb6b1('0xba')]=[{'all':!![]}];}_0x160166=_[_0xb6b1('0x9c')]({},_0x160166,_0x59b19f[_0xb6b1('0xbb')]);return db[_0xb6b1('0x32')][_0xb6b1('0x5b')](_0x160166)['then'](handleEntityNotFound(_0x54fb1e,null))[_0xb6b1('0x18')](respondWithResult(_0x54fb1e,null))['catch'](handleError(_0x54fb1e,null));};exports[_0xb6b1('0xbc')]=function(_0x28b252,_0x235ae7){return db[_0xb6b1('0x32')][_0xb6b1('0xbc')](_0x28b252[_0xb6b1('0xbd')],{})[_0xb6b1('0x18')](respondWithResult(_0x235ae7,0xc9))[_0xb6b1('0x28')](handleError(_0x235ae7,null));};exports[_0xb6b1('0x17')]=function(_0x49bbbb,_0x193c0a){if(_0x49bbbb[_0xb6b1('0xbd')]['id']){delete _0x49bbbb[_0xb6b1('0xbd')]['id'];}return db[_0xb6b1('0x32')][_0xb6b1('0x5b')]({'where':{'id':_0x49bbbb[_0xb6b1('0xb9')]['id']}})[_0xb6b1('0x18')](handleEntityNotFound(_0x193c0a,null))[_0xb6b1('0x18')](saveUpdates(_0x49bbbb['body'],null))['then'](respondWithResult(_0x193c0a,null))['catch'](handleError(_0x193c0a,null));};exports[_0xb6b1('0x19')]=function(_0x271599,_0x2a9fe9){return db['MailInteraction']['find']({'where':{'id':_0x271599['params']['id']}})[_0xb6b1('0x18')](handleEntityNotFound(_0x2a9fe9,null))['then'](removeEntity(_0x2a9fe9,null))[_0xb6b1('0x28')](handleError(_0x2a9fe9,null));};exports[_0xb6b1('0xbe')]=function(_0x434c1c,_0x4ac5ed){return db[_0xb6b1('0x32')]['describe']()[_0xb6b1('0x18')](respondWithResult(_0x4ac5ed,null))[_0xb6b1('0x28')](handleError(_0x4ac5ed,null));};exports[_0xb6b1('0xbf')]=function(_0x840ed1,_0x5576bf){return db[_0xb6b1('0x23')][_0xb6b1('0x5b')]({'where':{'id':_0x840ed1[_0xb6b1('0xb9')]['id']}})[_0xb6b1('0x18')](handleEntityNotFound(_0x5576bf,null))['then'](function(_0x1f27b6){if(_0x1f27b6){return _0x1f27b6[_0xb6b1('0xbf')](_0x840ed1['body'][_0xb6b1('0xc0')],_[_0xb6b1('0xc1')](_0x840ed1[_0xb6b1('0xbd')],['ids','id'])||{});}})[_0xb6b1('0x18')](respondWithResult(_0x5576bf,null))[_0xb6b1('0x28')](handleError(_0x5576bf,null));};exports[_0xb6b1('0xc2')]=function(_0x2e95ca,_0x257e05){var _0xa31640={'raw':![],'where':{}};var _0x1bf97a={};var _0x58244e={'count':0x0,'rows':[]};return db[_0xb6b1('0x32')][_0xb6b1('0xb5')]({'where':{'id':_0x2e95ca['params']['id']}})['then'](handleEntityNotFound(_0x257e05,null))[_0xb6b1('0x18')](function(_0x2d3ce6){if(_0x2d3ce6){_0x1bf97a[_0xb6b1('0x37')]=_['keys'](db[_0xb6b1('0x23')]['rawAttributes']);_0x1bf97a[_0xb6b1('0x38')]=_['keys'](_0x2e95ca[_0xb6b1('0x38')]);_0x1bf97a[_0xb6b1('0x43')]=_[_0xb6b1('0x3a')](_0x1bf97a[_0xb6b1('0x37')],_0x1bf97a[_0xb6b1('0x38')]);_0xa31640[_0xb6b1('0x3b')]=_['intersection'](_0x1bf97a['model'],qs[_0xb6b1('0x3c')](_0x2e95ca[_0xb6b1('0x38')]['fields']));_0xa31640[_0xb6b1('0x3b')]=_0xa31640[_0xb6b1('0x3b')][_0xb6b1('0x3d')]?_0xa31640[_0xb6b1('0x3b')]:_0x1bf97a[_0xb6b1('0x37')];if(!_0x2e95ca[_0xb6b1('0x38')][_0xb6b1('0x3e')](_0xb6b1('0x3f'))){_0xa31640[_0xb6b1('0x15')]=qs[_0xb6b1('0x15')](_0x2e95ca['query'][_0xb6b1('0x15')]);_0xa31640[_0xb6b1('0x13')]=qs['offset'](_0x2e95ca[_0xb6b1('0x38')]['offset']);}_0xa31640[_0xb6b1('0x40')]=qs[_0xb6b1('0x41')](_0x2e95ca['query'][_0xb6b1('0x41')]);_0xa31640['where']=qs['filters'](_['pick'](_0x2e95ca[_0xb6b1('0x38')],_0x1bf97a['filters']));_0xa31640[_0xb6b1('0x42')][_0xb6b1('0xb4')]=_0x2d3ce6['id'];if(_0x2e95ca[_0xb6b1('0x38')][_0xb6b1('0x7f')]){_0xa31640['where']=_[_0xb6b1('0x9c')](_0xa31640[_0xb6b1('0x42')],{'$or':_[_0xb6b1('0x31')](_0xa31640['attributes'],function(_0x1e2137){var _0x2b6ddf={};_0x2b6ddf[_0x1e2137]={'$like':'%'+_0x2e95ca[_0xb6b1('0x38')]['filter']+'%'};return _0x2b6ddf;})});}if(_0x2e95ca['query'][_0xb6b1('0x73')]){var _0x50406d=_0x2e95ca[_0xb6b1('0x38')][_0xb6b1('0x73')]['split'](',');var _0x555aa2={};_0x555aa2[_0x50406d[0x0]]={'$gte':moment(_0x50406d[0x1])[_0xb6b1('0xc3')](_0xb6b1('0xc4'))};_0xa31640[_0xb6b1('0x42')]=_[_0xb6b1('0x9c')](_0xa31640[_0xb6b1('0x42')],_0x555aa2);}_0xa31640=_[_0xb6b1('0x9c')]({},_0xa31640,_0x2e95ca[_0xb6b1('0xbb')]);return db[_0xb6b1('0x23')][_0xb6b1('0x16')]({'where':_0xa31640[_0xb6b1('0x42')]})[_0xb6b1('0x18')](function(_0x173eee){_0x58244e['count']=_0x173eee;if(_0x2e95ca[_0xb6b1('0x38')][_0xb6b1('0xc5')]){_0xa31640[_0xb6b1('0xba')]=[{'all':!![]}];}return db['MailMessage'][_0xb6b1('0xc6')](_0xa31640);})[_0xb6b1('0x18')](function(_0x564a97){if(_0x2e95ca[_0xb6b1('0x38')][_0xb6b1('0xc7')]===_0xb6b1('0xc8')){for(var _0x588be2=0x0;_0x588be2<_0x564a97['length'];_0x588be2++){_0x564a97[_0x588be2][_0xb6b1('0xbd')]=juice(_0x564a97[_0x588be2][_0xb6b1('0xbd')]);}}_0x58244e[_0xb6b1('0xb8')]=_0x564a97;return _0x58244e;});}})['then'](respondWithFilteredResult(_0x257e05,_0xa31640))['catch'](handleError(_0x257e05,null));};exports[_0xb6b1('0xc9')]=function(_0x129648,_0x9131e9){return db[_0xb6b1('0x32')][_0xb6b1('0x5b')]({'where':{'id':_0x129648['params']['id']}})['then'](handleEntityNotFound(_0x9131e9,null))[_0xb6b1('0x18')](function(_0x1f5381){if(_0x1f5381){return _0x1f5381[_0xb6b1('0xca')](_0x129648[_0xb6b1('0xbd')][_0xb6b1('0xc0')],_[_0xb6b1('0xc1')](_0x129648[_0xb6b1('0xbd')],['ids','id'])||{})[_0xb6b1('0xcb')](function(){return db[_0xb6b1('0x67')][_0xb6b1('0xc6')]({'attributes':['id',_0xb6b1('0x1c'),_0xb6b1('0x46')],'where':{'id':_0x129648[_0xb6b1('0xbd')][_0xb6b1('0xc0')]}});})['then'](function(_0x5813e4){socket['emit']('mailInteractionTags:save',{'id':Number(_0x129648[_0xb6b1('0xb9')]['id']),'tags':_0x5813e4||[]});return{'id':Number(_0x129648['params']['id']),'tags':_0x5813e4||[]};});}})['then'](respondWithResult(_0x9131e9,null))[_0xb6b1('0x28')](handleError(_0x9131e9,null));};exports['removeTags']=function(_0xd0eaa4,_0x51a36a){return db[_0xb6b1('0x32')]['find']({'where':{'id':_0xd0eaa4[_0xb6b1('0xb9')]['id']}})[_0xb6b1('0x18')](handleEntityNotFound(_0x51a36a,null))[_0xb6b1('0x18')](function(_0x3d081e){if(_0x3d081e){return _0x3d081e[_0xb6b1('0xcc')](_0xd0eaa4['query']['ids']);}})['then'](respondWithStatusCode(_0x51a36a,null))[_0xb6b1('0x28')](handleError(_0x51a36a,null));};exports[_0xb6b1('0xcd')]=function(_0x1bc26b,_0x286c65){var _0x24a136=moment()[_0xb6b1('0xce')]()[_0xb6b1('0x9a')]();var _0x4a7c67=path[_0xb6b1('0xcf')](config[_0xb6b1('0xd0')],'server',_0xb6b1('0xd1'),_0xb6b1('0xd2'));var _0x56b5c7=path[_0xb6b1('0xcf')](config[_0xb6b1('0xd0')],'server',_0xb6b1('0xd1'),'attachments');var _0x18be57=path[_0xb6b1('0xcf')](_0x4a7c67,_0x24a136);var _0x5b9247=util[_0xb6b1('0xc3')](_0xb6b1('0xd3'),_0x1bc26b[_0xb6b1('0xb9')]['id'],_0x24a136);var _0x1ffd3b=path[_0xb6b1('0xcf')](_0x4a7c67,_0x5b9247);var _0x6dec10=[];if(_0x1bc26b[_0xb6b1('0x38')][_0xb6b1('0xd4')]){_0x6dec10[_0xb6b1('0x22')]({'model':db[_0xb6b1('0xd5')],'as':'Attachments','raw':!![]});}var _0xb2e401=[{'model':db[_0xb6b1('0x23')],'as':'Messages','attributes':['id','body',_0xb6b1('0x4b'),'to','cc',_0xb6b1('0xd6'),_0xb6b1('0xd7'),'createdAt'],'where':{'secret':![]},'order':qs[_0xb6b1('0x41')]('id'),'include':_0x6dec10}];return db[_0xb6b1('0x32')][_0xb6b1('0x5b')]({'where':{'id':_0x1bc26b[_0xb6b1('0xb9')]['id']},'include':_0xb2e401})['then'](handleEntityNotFound(_0x286c65,null))['then'](function(_0x737fa0){if(_0x737fa0&&_0x737fa0[_0xb6b1('0xd8')]){var _0x288f12=_0x737fa0[_0xb6b1('0xd9')]({'plain':!![]});fs[_0xb6b1('0xda')](_0x18be57);return BPromise[_0xb6b1('0xdb')](_0x288f12[_0xb6b1('0xd8')],function(_0x570d67,_0x409aad){var _0x2ab39a={'from':_0x570d67[_0xb6b1('0x4b')],'to':_0x570d67['to'],'subject':_0x570d67[_0xb6b1('0xd7')],'html':htmlEntities['decode'](_0x570d67[_0xb6b1('0xbd')]),'headers':{'Date':moment(_0x570d67[_0xb6b1('0x72')])[_0xb6b1('0xc3')](_0xb6b1('0xdc'))},'attachments':[]};if(_0x570d67['cc']){_0x2ab39a['headers']['Cc']=_0x570d67['cc'];}if(_0x570d67[_0xb6b1('0xd6')]){_0x2ab39a[_0xb6b1('0xdd')][_0xb6b1('0xde')]=_0x570d67[_0xb6b1('0xd6')];}return new BPromise(function(_0x3cdd09,_0x37a71b){if(_0x570d67['Attachments']){for(var _0x8486dc=0x0;_0x8486dc<_0x570d67[_0xb6b1('0xdf')][_0xb6b1('0x3d')];_0x8486dc++){var _0x18c0fa=_0x570d67[_0xb6b1('0xdf')][_0x8486dc];var _0x20eeed=path[_0xb6b1('0xcf')](_0x56b5c7,_0x18c0fa[_0xb6b1('0xe0')]);if(fs[_0xb6b1('0xe1')](_0x20eeed)){_0x2ab39a[_0xb6b1('0xd4')][_0xb6b1('0x22')]({'name':_0x18c0fa['name'],'contentType':_0x18c0fa['type'],'data':fs[_0xb6b1('0xe2')](_0x20eeed)});}}}emlformat[_0xb6b1('0xe3')](_0x2ab39a,function(_0x2d8d1f,_0x25a2c4){if(_0x2d8d1f)return _0x37a71b(_0x2d8d1f);fs['writeFileSync'](path['join'](_0x18be57,util['format'](_0xb6b1('0xe4'),_0x409aad)),_0x25a2c4);return _0x3cdd09(_0x25a2c4);});});})['then'](function(){return new BPromise(function(_0x2f2ba2,_0x2414dc){zipdir(_0x18be57,{'saveTo':_0x1ffd3b},function(_0xf8e6b0,_0x2151a9){if(_0xf8e6b0)return _0x2414dc(_0xf8e6b0);return _0x2f2ba2(_0x2151a9);});})['then'](function(){return new BPromise(function(_0x530a16,_0x142d71){rimraf(_0x18be57,function(_0x1085c5){if(_0x1085c5)_0x142d71(_0x1085c5);return _0x530a16();});});})['then'](function(){return _0x286c65[_0xb6b1('0xcd')](_0x1ffd3b,_0x5b9247,function(_0x4c166f){if(!_0x4c166f)fs[_0xb6b1('0xe5')](_0x1ffd3b);});});});}else{return _0x286c65[_0xb6b1('0xe6')](0xc8);}})['catch'](handleError(_0x286c65,null));};
\ No newline at end of file
+var _0xfc17=['set','update','then','destroy','error','stack','name','send','fullname','TagIds','Tags','split','push','findOne','out','plainBody','-id','lastMsgText','trimStart','catch','waiting','talking','answered','unmanaged','UserId','closed','total','index','map','MailInteraction','fieldName','type','key','query','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','select','field','color','from','u.id','u.fullname','ui.MailInteractionId','user_has_mail_interactions','left_join','u.id\x20=\x20ui.UserId','mail_interactions','cm_contacts','o.id\x20=\x20i.UserId','mail_accounts','a.id\x20=\x20i.MailAccountId','mail_messages','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','tools_tags','expr','search','parseSearch','conditions','find','unreadMessages','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)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','buildExpression','text','start','Tag','forEach','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','keys','compact','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','i.id\x20LIKE\x20?','c.email\x20LIKE\x20?','getFullTextValue','group','i.id','Sequelize','SELECT','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','i.MailAccountId\x20IS\x20NOT\x20NULL','user','getMailAccounts','i.MailAccountId\x20IS\x20NULL','role','agent','sequelize','toString','merge','a.key','a.mandatoryDisposition','Account.mandatoryDisposition','CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20(\x27%\x27\x20+\x20a.email\x20+\x20\x27%\x27)\x20THEN\x20SUBSTRING_INDEX(i.to,\x20\x27<\x27,\x201)\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','i.createdAt','i.updatedAt','i.closed','i.lastMsgAt','i.subject','i.disposition','i.secondDisposition','i.substatus','i.ContactId','i.MailAccountId','c.firstName','Contact.firstName','Contact.lastName','c.email','c.phone','c.mobile','c.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy','MailInteractionId','Setting','enableEmailPreview','rows','show','includeAll','include','body','params','describe','addMessage','ids','rawAttributes','$gte','format','YYYY-MM-DD\x20HH:mm:ss','options','findAll','inlineCss','addTags','setTags','spread','emit','mailInteractionTags:save','removeTags','download','unix','join','root','server','files','attachments','transcript-%d-%s.zip','Attachment','Attachments','MailMessage','bcc','subject','Messages','get','mkdirSync','each','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','readFileSync','build','writeFileSync','message%d.eml','eml-format','rimraf','zip-dir','moment','util','path','lodash','squel','juice','ioredis','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','localhost','socket.io-emitter','./mailInteraction.socket','sendStatus','status','end','json','offset','undefined','limit','count'];(function(_0x2ea41,_0x4f807b){var _0x8ee23b=function(_0x2e5fd8){while(--_0x2e5fd8){_0x2ea41['push'](_0x2ea41['shift']());}};_0x8ee23b(++_0x4f807b);}(_0xfc17,0x1b4));var _0x7fc1=function(_0x14c959,_0x298598){_0x14c959=_0x14c959-0x0;var _0x371779=_0xfc17[_0x14c959];return _0x371779;};'use strict';var emlformat=require(_0x7fc1('0x0'));var rimraf=require(_0x7fc1('0x1'));var zipdir=require(_0x7fc1('0x2'));var moment=require(_0x7fc1('0x3'));var BPromise=require('bluebird');var util=require(_0x7fc1('0x4'));var path=require(_0x7fc1('0x5'));var fs=require('fs');var _=require(_0x7fc1('0x6'));var squel=require(_0x7fc1('0x7'));var juice=require(_0x7fc1('0x8'));var Redis=require(_0x7fc1('0x9'));var qs=require('../../components/parsers/qs');var as=require(_0x7fc1('0xa'));var logger=require(_0x7fc1('0xb'))(_0x7fc1('0xc'));var config=require(_0x7fc1('0xd'));var db=require(_0x7fc1('0xe'))['db'];var htmlEntities=require(_0x7fc1('0xf'));config[_0x7fc1('0x10')]=_['defaults'](config[_0x7fc1('0x10')],{'host':_0x7fc1('0x11'),'port':0x18eb});var socket=require(_0x7fc1('0x12'))(new Redis(config['redis']));require(_0x7fc1('0x13'))['register'](socket);function respondWithStatusCode(_0x5c59ad,_0x775538){_0x775538=_0x775538||0xcc;return function(_0xe06cb4){if(_0xe06cb4){return _0x5c59ad[_0x7fc1('0x14')](_0x775538);}return _0x5c59ad[_0x7fc1('0x15')](_0x775538)[_0x7fc1('0x16')]();};}function respondWithResult(_0x20ed58,_0x53277f){_0x53277f=_0x53277f||0xc8;return function(_0x3a7c8e){if(_0x3a7c8e){return _0x20ed58[_0x7fc1('0x15')](_0x53277f)[_0x7fc1('0x17')](_0x3a7c8e);}};}function respondWithFilteredResult(_0x12ddce,_0x3c328c){return function(_0x5651f2){if(_0x5651f2){var _0x54a204=typeof _0x3c328c[_0x7fc1('0x18')]===_0x7fc1('0x19')&&typeof _0x3c328c[_0x7fc1('0x1a')]===_0x7fc1('0x19');var _0x432825=_0x5651f2[_0x7fc1('0x1b')];var _0x3d8e82=_0x54a204?0x0:_0x3c328c[_0x7fc1('0x18')];var _0x18be8e=_0x54a204?_0x5651f2[_0x7fc1('0x1b')]:_0x3c328c['offset']+_0x3c328c[_0x7fc1('0x1a')];var _0x5e89b1;if(_0x18be8e>=_0x432825){_0x18be8e=_0x432825;_0x5e89b1=0xc8;}else{_0x5e89b1=0xce;}_0x12ddce[_0x7fc1('0x15')](_0x5e89b1);return _0x12ddce[_0x7fc1('0x1c')]('Content-Range',_0x3d8e82+'-'+_0x18be8e+'/'+_0x432825)[_0x7fc1('0x17')](_0x5651f2);}return null;};}function saveUpdates(_0x1c12cf){return function(_0x58c20a){if(_0x58c20a){return _0x58c20a[_0x7fc1('0x1d')](_0x1c12cf)[_0x7fc1('0x1e')](function(_0x1158f0){return _0x1158f0;});}return null;};}function removeEntity(_0x416748){return function(_0x10b4b7){if(_0x10b4b7){return _0x10b4b7[_0x7fc1('0x1f')]()[_0x7fc1('0x1e')](function(){_0x416748[_0x7fc1('0x15')](0xcc)[_0x7fc1('0x16')]();});}};}function handleEntityNotFound(_0xac99f6){return function(_0x4dea9c){if(!_0x4dea9c){_0xac99f6['sendStatus'](0x194);}return _0x4dea9c;};}function handleError(_0x2390b8,_0x5e10cd){_0x5e10cd=_0x5e10cd||0x1f4;return function(_0x3c39e2){logger[_0x7fc1('0x20')](_0x3c39e2[_0x7fc1('0x21')]);if(_0x3c39e2[_0x7fc1('0x22')]){delete _0x3c39e2['name'];}_0x2390b8[_0x7fc1('0x15')](_0x5e10cd)[_0x7fc1('0x23')](_0x3c39e2);};}function getInteractionUsers(_0x2cbf9b,_0x4d6c46){return new BPromise(function(_0x190204,_0x252b18){try{if(_0x4d6c46[_0x2cbf9b['id']]){_0x2cbf9b['Users']=_['map'](_0x4d6c46[_0x2cbf9b['id']],function(_0x2e4256){return{'id':_0x2e4256['id'],'fullname':_0x2e4256[_0x7fc1('0x24')]};});}}catch(_0x1f58ca){_0x252b18(_0x1f58ca);}_0x190204(_0x2cbf9b);});}function getInteractionTags(_0x2ae7db,_0x58c7a2){return new BPromise(function(_0x1d7b77,_0x1628fd){try{if(_0x2ae7db[_0x7fc1('0x25')]){_0x2ae7db[_0x7fc1('0x26')]=[];_0x2ae7db['TagIds'][_0x7fc1('0x27')](',')['forEach'](function(_0x1f7fce){_0x2ae7db[_0x7fc1('0x26')][_0x7fc1('0x28')](_0x58c7a2[_0x1f7fce]);});}delete _0x2ae7db[_0x7fc1('0x25')];}catch(_0x2317f5){_0x1628fd(_0x2317f5);}_0x1d7b77(_0x2ae7db);});}function getLastMessageText(_0x4cf06e){return new BPromise(function(_0x17be3a,_0x59a89a){return db['MailMessage'][_0x7fc1('0x29')]({'where':{'$and':[{'MailInteractionId':_0x4cf06e['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0x7fc1('0x2a')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0x7fc1('0x2b')],'order':_0x7fc1('0x2c'),'raw':!![]})[_0x7fc1('0x1e')](function(_0x444b51){if(_0x444b51&&_0x444b51[_0x7fc1('0x2b')]){_0x4cf06e[_0x7fc1('0x2d')]=_[_0x7fc1('0x2e')](_0x444b51[_0x7fc1('0x2b')]);}_0x17be3a(_0x4cf06e);})[_0x7fc1('0x2f')](function(_0x2c95c8){_0x59a89a(_0x2c95c8);});});}function updateMailInteraction(_0x242fd1,_0x2c3ead,_0x211df6,_0x19064f){return new BPromise(function(_0x5e3f04,_0x24904b){return getInteractionUsers(_0x242fd1,_0x211df6)[_0x7fc1('0x1e')](function(_0x4282b5){return getInteractionTags(_0x4282b5,_0x2c3ead);})[_0x7fc1('0x1e')](function(_0x2c91cb){return getStateInteraction(_0x2c91cb);})[_0x7fc1('0x1e')](function(_0x5b96ea){if(_0x19064f){_0x5e3f04(getLastMessageText(_0x5b96ea));}else{_0x5e3f04(_0x5b96ea);}})[_0x7fc1('0x2f')](function(_0x3f8961){_0x24904b(_0x3f8961);});});}function getStateInteraction(_0x4f36c8){return new BPromise(function(_0x295268){_0x4f36c8[_0x7fc1('0x30')]=0x0;_0x4f36c8[_0x7fc1('0x31')]=0x0;_0x4f36c8[_0x7fc1('0x32')]=0x0;_0x4f36c8[_0x7fc1('0x33')]=0x0;_0x4f36c8['total']=0x0;if(!_0x4f36c8['closed']&&!_0x4f36c8[_0x7fc1('0x34')]){_0x4f36c8[_0x7fc1('0x30')]+=0x1;}if(!_0x4f36c8[_0x7fc1('0x35')]&&_0x4f36c8[_0x7fc1('0x34')]){_0x4f36c8[_0x7fc1('0x31')]+=0x1;if(_0x4f36c8[_0x7fc1('0x30')]){_0x4f36c8[_0x7fc1('0x30')]-=0x1;}}if(_0x4f36c8[_0x7fc1('0x35')]&&_0x4f36c8['UserId']){_0x4f36c8[_0x7fc1('0x32')]+=0x1;if(_0x4f36c8[_0x7fc1('0x31')]){_0x4f36c8['talking']-=0x1;}}if(_0x4f36c8[_0x7fc1('0x35')]&&!_0x4f36c8[_0x7fc1('0x34')]){_0x4f36c8[_0x7fc1('0x33')]+=0x1;if(_0x4f36c8['waiting']){_0x4f36c8['waiting']-=0x1;}}_0x4f36c8[_0x7fc1('0x36')]+=0x1;_0x295268(_0x4f36c8);});}exports[_0x7fc1('0x37')]=function(_0xafc8b0,_0x564437){var _0x4e640b={},_0x50c728={},_0x2fc293={'count':0x0,'rows':[]};var _0x1e4f53=_[_0x7fc1('0x38')](db[_0x7fc1('0x39')]['rawAttributes'],function(_0x548885){return{'name':_0x548885[_0x7fc1('0x3a')],'type':_0x548885[_0x7fc1('0x3b')][_0x7fc1('0x3c')]};});_0x50c728['model']=_['map'](_0x1e4f53,'name');_0x50c728['query']=_['keys'](_0xafc8b0[_0x7fc1('0x3d')]);_0x50c728['filters']=_[_0x7fc1('0x3e')](_0x50c728[_0x7fc1('0x3f')],_0x50c728['query']);_0x4e640b[_0x7fc1('0x40')]=_[_0x7fc1('0x3e')](_0x50c728[_0x7fc1('0x3f')],qs[_0x7fc1('0x41')](_0xafc8b0['query'][_0x7fc1('0x41')]));_0x4e640b['attributes']=_0x4e640b[_0x7fc1('0x40')][_0x7fc1('0x42')]?_0x4e640b[_0x7fc1('0x40')]:_0x50c728[_0x7fc1('0x3f')];if(!_0xafc8b0['query'][_0x7fc1('0x43')](_0x7fc1('0x44'))){_0x4e640b['limit']=qs[_0x7fc1('0x1a')](_0xafc8b0[_0x7fc1('0x3d')]['limit']);_0x4e640b[_0x7fc1('0x18')]=qs[_0x7fc1('0x18')](_0xafc8b0['query'][_0x7fc1('0x18')]);}_0x4e640b[_0x7fc1('0x45')]=qs[_0x7fc1('0x46')](_0xafc8b0['query'][_0x7fc1('0x46')]);_0x4e640b[_0x7fc1('0x47')]=qs[_0x7fc1('0x48')](_[_0x7fc1('0x49')](_0xafc8b0['query'],_0x50c728['filters']),_0x1e4f53);var _0x15edd4=[];var _0x425e5a=squel[_0x7fc1('0x4a')]()[_0x7fc1('0x4b')]('id')[_0x7fc1('0x4b')](_0x7fc1('0x22'))[_0x7fc1('0x4b')](_0x7fc1('0x4c'))[_0x7fc1('0x4d')]('tools_tags');var _0x518a54=squel['select']()[_0x7fc1('0x4b')](_0x7fc1('0x4e'))[_0x7fc1('0x4b')](_0x7fc1('0x4f'))['field'](_0x7fc1('0x50'))[_0x7fc1('0x4d')](_0x7fc1('0x51'),'ui')[_0x7fc1('0x52')]('users','u',_0x7fc1('0x53'));var _0x5ef33=squel[_0x7fc1('0x4a')]()[_0x7fc1('0x4d')](_0x7fc1('0x54'),'i')[_0x7fc1('0x52')](_0x7fc1('0x55'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x7fc1('0x52')]('users','o',_0x7fc1('0x56'))['left_join'](_0x7fc1('0x57'),'a',_0x7fc1('0x58'))['left_join'](_0x7fc1('0x59'),'me',_0x7fc1('0x5a'))['left_join'](_0x7fc1('0x5b'),'it',_0x7fc1('0x5c'))[_0x7fc1('0x52')](_0x7fc1('0x5d'),'t','t.id\x20=\x20it.TagId');var _0x48cc9b=squel[_0x7fc1('0x5e')]();var _0x4a75d6=[];var _0x802d83=squel[_0x7fc1('0x5e')]();var _0x1dbfbd;if(_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x5f')]){_0x1dbfbd=as[_0x7fc1('0x60')](_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x5f')]);var _0x1ea117=_0x1dbfbd['sqlOperator'];for(var _0x562e2b=0x0;_0x562e2b<_0x1dbfbd[_0x7fc1('0x61')]['length'];_0x562e2b++){var _0x320d7a=_0x1dbfbd['conditions'][_0x562e2b];var _0x268f71='i';var _0x143a9f=_[_0x7fc1('0x62')](_0x1e4f53,[_0x7fc1('0x22'),_0x320d7a[_0x7fc1('0x4b')]]);if(!_0x143a9f){switch(_0x320d7a[_0x7fc1('0x4b')]){case _0x7fc1('0x63'):if(_0x320d7a[_0x7fc1('0x64')]==0x1){_0x5ef33['having']('`'+_0x320d7a[_0x7fc1('0x4b')]+'`\x20=\x200');}else{_0x5ef33[_0x7fc1('0x65')]('`'+_0x320d7a['field']+_0x7fc1('0x66'));}break;case'Contact':if(_0x320d7a[_0x7fc1('0x67')]===_0x7fc1('0x68')){if(_0x320d7a[_0x7fc1('0x64')][_0x7fc1('0x27')]('\x20')['length']>0x1){_0x48cc9b[_0x1ea117](_0x7fc1('0x69'),qs['getFullTextValue'](_0x320d7a[_0x7fc1('0x64')]),null);}else{var _0x297f19='%'+_0x320d7a[_0x7fc1('0x64')]+'%';_0x48cc9b[_0x1ea117](_0x7fc1('0x6a'),_0x297f19,_0x297f19,_0x297f19);}}else{_0x143a9f=_[_0x7fc1('0x62')](_0x1e4f53,[_0x7fc1('0x22'),'ContactId']);_0x320d7a['field']='ContactId';_0x19acde=as[_0x7fc1('0x6b')](_0x268f71,_0x143a9f[_0x7fc1('0x3b')],_0x320d7a);_0x48cc9b[_0x1ea117](_0x19acde[_0x7fc1('0x6c')],_0x19acde[_0x7fc1('0x64')][_0x7fc1('0x6d')],_0x19acde[_0x7fc1('0x64')][_0x7fc1('0x16')]);}break;case _0x7fc1('0x6e'):var _0x1de6b8=_0x320d7a['value'][_0x7fc1('0x27')](',')[_0x7fc1('0x38')](function(_0xd0f09d){return Number(_0xd0f09d);});_0x1de6b8[_0x7fc1('0x6f')](function(_0x3294c3){_0x802d83['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x3294c3+',%');});_0x4a75d6=_['union'](_0x4a75d6,_0x1de6b8);break;case _0x7fc1('0x70'):if(_0x320d7a[_0x7fc1('0x67')]===_0x7fc1('0x68')){_0x48cc9b[_0x1ea117](_0x7fc1('0x71'),'%'+_0x320d7a[_0x7fc1('0x64')]+'%',null);}else{_0x143a9f=_[_0x7fc1('0x62')](_0x1e4f53,['name',_0x7fc1('0x34')]);_0x320d7a[_0x7fc1('0x4b')]=_0x7fc1('0x34');_0x19acde=as[_0x7fc1('0x6b')](_0x268f71,_0x143a9f[_0x7fc1('0x3b')],_0x320d7a);_0x48cc9b[_0x1ea117](_0x19acde[_0x7fc1('0x6c')],_0x19acde[_0x7fc1('0x64')][_0x7fc1('0x6d')],_0x19acde['value'][_0x7fc1('0x16')]);}break;case'plainBody':_0x19acde=as[_0x7fc1('0x6b')]('me',null,_0x320d7a);_0x48cc9b[_0x1ea117](_0x19acde[_0x7fc1('0x6c')],_0x19acde[_0x7fc1('0x64')][_0x7fc1('0x6d')],_0x19acde[_0x7fc1('0x64')]['end']);break;}}else{var _0x19acde=as[_0x7fc1('0x6b')](_0x268f71,_0x143a9f[_0x7fc1('0x3b')],_0x320d7a);_0x48cc9b[_0x1ea117](_0x19acde['text'],_0x19acde[_0x7fc1('0x64')]['start'],_0x19acde[_0x7fc1('0x64')][_0x7fc1('0x16')]);}}}else{var _0x513894=_(_0xafc8b0[_0x7fc1('0x3d')])[_0x7fc1('0x72')]()[_0x7fc1('0x38')](function(_0x1119fc){return _['some'](_0x1e4f53,[_0x7fc1('0x22'),_0x1119fc])?_0x1119fc:undefined;})[_0x7fc1('0x73')]()[_0x7fc1('0x64')]();if(!_[_0x7fc1('0x74')](_0x513894)){_0x513894[_0x7fc1('0x6f')](function(_0x2c85e9){if(_0x2c85e9===_0x7fc1('0x75')){_0x5ef33[_0x7fc1('0x47')](_0x7fc1('0x76'),[][_0x7fc1('0x77')](_0xafc8b0[_0x7fc1('0x3d')][_0x2c85e9]));}else if(_0x2c85e9===_0x7fc1('0x78')){var _0x372905=JSON[_0x7fc1('0x79')](_0xafc8b0[_0x7fc1('0x3d')][_0x2c85e9])['$gte'];var _0x19e649=JSON[_0x7fc1('0x79')](_0xafc8b0[_0x7fc1('0x3d')][_0x2c85e9])[_0x7fc1('0x7a')];_0x5ef33[_0x7fc1('0x47')](_0x7fc1('0x7b'),_0x372905,_0x19e649);}else{if(_0xafc8b0['query'][_0x2c85e9]==='null'){_0x5ef33[_0x7fc1('0x47')]('i.'+_0x2c85e9+_0x7fc1('0x7c'));}else{_0x5ef33[_0x7fc1('0x47')]('i.'+_0x2c85e9+_0x7fc1('0x7d'),_0xafc8b0[_0x7fc1('0x3d')][_0x2c85e9]);}}});}if(_0xafc8b0[_0x7fc1('0x3d')]['read']){if(_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x7e')]==0x1){_0x5ef33['having'](_0x7fc1('0x7f'));}else{_0x5ef33['having'](_0x7fc1('0x80'));}}if(_0xafc8b0[_0x7fc1('0x3d')]['tag']){_0x4a75d6=_['isArray'](_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x81')])?_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x81')]:new Array(_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x81')]);_0x4a75d6[_0x7fc1('0x6f')](function(_0x488718){_0x802d83['or'](_0x7fc1('0x82'),'%,'+_0x488718+',%');});}if(_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x83')]){var _0x2c4dc5=_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x83')]['replace']('\x5c','\x5c\x5c')[_0x7fc1('0x84')](/'/g,'\x27\x27');if(qs[_0x7fc1('0x85')](_0x2c4dc5)){_0x48cc9b['or'](_0x7fc1('0x86'),_0x2c4dc5+'%');}else if(qs['isEmail'](_0x2c4dc5)){_0x48cc9b['or'](_0x7fc1('0x87'),_0x2c4dc5+'%');}else{_0x48cc9b['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x2c4dc5))['or']('MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x7fc1('0x88')](_0x2c4dc5));}}}_0x5ef33[_0x7fc1('0x47')](_0x48cc9b);_0x5ef33[_0x7fc1('0x89')](_0x7fc1('0x8a'));var _0x1a33b9={'type':db[_0x7fc1('0x8b')]['QueryTypes'][_0x7fc1('0x8c')],'raw':!![]};var _0x54757d=_0x5ef33['clone']();_0x54757d['field'](_0x7fc1('0x8a'));_0x54757d[_0x7fc1('0x4b')](_0x7fc1('0x8d'),'unreadMessages');if(_0x4e640b[_0x7fc1('0x45')]){_0x4e640b[_0x7fc1('0x45')][_0x7fc1('0x6f')](function(_0x306932){var _0x1e04e7=_0x306932[0x0]===_0x7fc1('0x8e')?_0x306932[0x0]:'i.'+_0x306932[0x0];_0x5ef33['order'](_0x1e04e7,_0x306932[0x1]===_0x7fc1('0x8f')?![]:!![]);});}if(!_[_0x7fc1('0x74')](_0x4a75d6)){_0x5ef33[_0x7fc1('0x65')](_0x802d83);_0x54757d[_0x7fc1('0x47')]('t.id\x20IN\x20?',_0x4a75d6);}BPromise['resolve']()['then'](function(){if(!_0x1dbfbd){if(_0xafc8b0[_0x7fc1('0x3d')][_0x7fc1('0x75')])return;_0x54757d[_0x7fc1('0x47')](_0x7fc1('0x90'));_0x5ef33['where'](_0x7fc1('0x90'));return;}if(_0xafc8b0[_0x7fc1('0x91')]['role']!=='agent')return;return _0xafc8b0[_0x7fc1('0x91')][_0x7fc1('0x92')]({'attributes':['id'],'raw':!![]})['then'](function(_0x15899d){if(_[_0x7fc1('0x74')](_0x15899d)){_0x54757d['where'](_0x7fc1('0x93'));_0x5ef33[_0x7fc1('0x47')](_0x7fc1('0x93'));}else{_0x54757d['where'](_0x7fc1('0x76'),_[_0x7fc1('0x38')](_0x15899d,'id'));_0x5ef33[_0x7fc1('0x47')](_0x7fc1('0x76'),_['map'](_0x15899d,'id'));}});})['then'](function(){if(_0xafc8b0['user'][_0x7fc1('0x94')]===_0x7fc1('0x95')&&!_0x1dbfbd&&!_0xafc8b0['query'][_0x7fc1('0x75')])return[];return db[_0x7fc1('0x96')][_0x7fc1('0x3d')](_0x54757d[_0x7fc1('0x97')](),_0x1a33b9);})[_0x7fc1('0x1e')](function(_0x13c895){_0x2fc293[_0x7fc1('0x1b')]=_0x13c895[_0x7fc1('0x42')];if(_0x2fc293[_0x7fc1('0x1b')]===0x0)return[];return db[_0x7fc1('0x96')][_0x7fc1('0x3d')](_0x425e5a['toString'](),_0x1a33b9)[_0x7fc1('0x1e')](function(_0x388817){_0x15edd4=_['keyBy'](_0x388817,'id');_0x1a33b9=_[_0x7fc1('0x98')](_0x1a33b9,{'model':db[_0x7fc1('0x39')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0xafc8b0['query']['fields']){_0x4e640b[_0x7fc1('0x40')][_0x7fc1('0x6f')](function(_0x42f448){_0x5ef33['field']('i.'+_0x42f448);});}else{_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0x8d'),_0x7fc1('0x63'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0x99'),'Account.key');_0x5ef33['field'](_0x7fc1('0x9a'),_0x7fc1('0x9b'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0x9c'),_0x7fc1('0x8e'));_0x5ef33['field'](_0x7fc1('0x8a'));_0x5ef33['field'](_0x7fc1('0x9d'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0x9e'));_0x5ef33['field'](_0x7fc1('0x9f'));_0x5ef33[_0x7fc1('0x4b')]('i.closedAt');_0x5ef33[_0x7fc1('0x4b')]('i.attach');_0x5ef33['field'](_0x7fc1('0xa0'));_0x5ef33['field']('i.lastMsgDirection');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa1'));_0x5ef33['field'](_0x7fc1('0xa2'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa3'));_0x5ef33['field']('i.thirdDisposition');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa4'));_0x5ef33['field']('i.to');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa5'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa6'));_0x5ef33[_0x7fc1('0x4b')]('i.UserId');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xa7'),_0x7fc1('0xa8'));_0x5ef33['field']('c.lastName',_0x7fc1('0xa9'));_0x5ef33['field'](_0x7fc1('0xaa'),'Contact.email');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xab'),'Contact.phone');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xac'),'Contact.mobile');_0x5ef33['field'](_0x7fc1('0xad'),'Contact.fax');_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xae'),_0x7fc1('0xaf'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xb0'),_0x7fc1('0xb1'));_0x5ef33[_0x7fc1('0x4b')](_0x7fc1('0xb2'),'TagIds');}if(_0x4e640b['limit'])_0x5ef33[_0x7fc1('0x1a')](_0x4e640b[_0x7fc1('0x1a')]);if(_0x4e640b['offset'])_0x5ef33[_0x7fc1('0x18')](_0x4e640b['offset']);return db['sequelize'][_0x7fc1('0x3d')](_0x5ef33['toString'](),_0x1a33b9);})[_0x7fc1('0x1e')](function(_0x6fdd15){if(_0x6fdd15['length']>0x0)_0x518a54[_0x7fc1('0x47')](_0x7fc1('0xb3'),_['map'](_0x6fdd15,'id'));return db[_0x7fc1('0x96')]['query'](_0x518a54[_0x7fc1('0x97')](),_0x1a33b9)[_0x7fc1('0x1e')](function(_0x461ae2){var _0x5f5d56=_[_0x7fc1('0xb4')](_0x461ae2,_0x7fc1('0xb5'));var _0x5e42f2=[];return db[_0x7fc1('0xb6')][_0x7fc1('0x29')]({'attributes':[_0x7fc1('0xb7')],'raw':!![]})['then'](function(_0x5e7ec0){var _0x3f5770=_0x5e7ec0[_0x7fc1('0xb7')];_0x6fdd15['forEach'](function(_0x2d95fb){_0x5e42f2[_0x7fc1('0x28')](updateMailInteraction(_0x2d95fb,_0x15edd4,_0x5f5d56,_0x3f5770));});return BPromise['all'](_0x5e42f2);});});});})['then'](function(_0xc627c1){_0x2fc293[_0x7fc1('0xb8')]=_0xc627c1;return _0x2fc293;})['then'](respondWithFilteredResult(_0x564437,_0x4e640b))[_0x7fc1('0x2f')](handleError(_0x564437,null));};exports[_0x7fc1('0xb9')]=function(_0x4d584c,_0x2b12bf){var _0x2f676f={'raw':![],'where':{'id':_0x4d584c['params']['id']}},_0xde49ed={};_0xde49ed[_0x7fc1('0x3f')]=_[_0x7fc1('0x72')](db[_0x7fc1('0x39')]['rawAttributes']);_0xde49ed['query']=_[_0x7fc1('0x72')](_0x4d584c['query']);_0xde49ed['filters']=_['intersection'](_0xde49ed[_0x7fc1('0x3f')],_0xde49ed[_0x7fc1('0x3d')]);_0x2f676f[_0x7fc1('0x40')]=_['intersection'](_0xde49ed[_0x7fc1('0x3f')],qs[_0x7fc1('0x41')](_0x4d584c['query'][_0x7fc1('0x41')]));_0x2f676f['attributes']=_0x2f676f[_0x7fc1('0x40')][_0x7fc1('0x42')]?_0x2f676f[_0x7fc1('0x40')]:_0xde49ed[_0x7fc1('0x3f')];if(_0x4d584c[_0x7fc1('0x3d')][_0x7fc1('0xba')]){_0x2f676f[_0x7fc1('0xbb')]=[{'all':!![]}];}_0x2f676f=_[_0x7fc1('0x98')]({},_0x2f676f,_0x4d584c['options']);return db[_0x7fc1('0x39')][_0x7fc1('0x62')](_0x2f676f)[_0x7fc1('0x1e')](handleEntityNotFound(_0x2b12bf,null))[_0x7fc1('0x1e')](respondWithResult(_0x2b12bf,null))['catch'](handleError(_0x2b12bf,null));};exports['create']=function(_0x48ffb3,_0x462dd4){return db[_0x7fc1('0x39')]['create'](_0x48ffb3[_0x7fc1('0xbc')],{})[_0x7fc1('0x1e')](respondWithResult(_0x462dd4,0xc9))[_0x7fc1('0x2f')](handleError(_0x462dd4,null));};exports['update']=function(_0x11d81c,_0x7f16e){if(_0x11d81c[_0x7fc1('0xbc')]['id']){delete _0x11d81c[_0x7fc1('0xbc')]['id'];}return db[_0x7fc1('0x39')][_0x7fc1('0x62')]({'where':{'id':_0x11d81c[_0x7fc1('0xbd')]['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x7f16e,null))[_0x7fc1('0x1e')](saveUpdates(_0x11d81c[_0x7fc1('0xbc')],null))[_0x7fc1('0x1e')](respondWithResult(_0x7f16e,null))[_0x7fc1('0x2f')](handleError(_0x7f16e,null));};exports[_0x7fc1('0x1f')]=function(_0x400e21,_0x440be1){return db[_0x7fc1('0x39')][_0x7fc1('0x62')]({'where':{'id':_0x400e21['params']['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x440be1,null))[_0x7fc1('0x1e')](removeEntity(_0x440be1,null))[_0x7fc1('0x2f')](handleError(_0x440be1,null));};exports[_0x7fc1('0xbe')]=function(_0x560cf4,_0x239fc7){return db[_0x7fc1('0x39')][_0x7fc1('0xbe')]()[_0x7fc1('0x1e')](respondWithResult(_0x239fc7,null))[_0x7fc1('0x2f')](handleError(_0x239fc7,null));};exports[_0x7fc1('0xbf')]=function(_0x25fdca,_0x5161b4){return db['MailMessage'][_0x7fc1('0x62')]({'where':{'id':_0x25fdca[_0x7fc1('0xbd')]['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x5161b4,null))[_0x7fc1('0x1e')](function(_0xc217c3){if(_0xc217c3){return _0xc217c3[_0x7fc1('0xbf')](_0x25fdca['body']['ids'],_['omit'](_0x25fdca[_0x7fc1('0xbc')],[_0x7fc1('0xc0'),'id'])||{});}})[_0x7fc1('0x1e')](respondWithResult(_0x5161b4,null))[_0x7fc1('0x2f')](handleError(_0x5161b4,null));};exports['getMessages']=function(_0x58fe4b,_0x51698f){var _0x390456={'raw':![],'where':{}};var _0xa3826a={};var _0x37bce6={'count':0x0,'rows':[]};return db[_0x7fc1('0x39')][_0x7fc1('0x29')]({'where':{'id':_0x58fe4b[_0x7fc1('0xbd')]['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x51698f,null))[_0x7fc1('0x1e')](function(_0x24a3b8){if(_0x24a3b8){_0xa3826a[_0x7fc1('0x3f')]=_['keys'](db['MailMessage'][_0x7fc1('0xc1')]);_0xa3826a['query']=_[_0x7fc1('0x72')](_0x58fe4b[_0x7fc1('0x3d')]);_0xa3826a[_0x7fc1('0x48')]=_[_0x7fc1('0x3e')](_0xa3826a[_0x7fc1('0x3f')],_0xa3826a[_0x7fc1('0x3d')]);_0x390456['attributes']=_[_0x7fc1('0x3e')](_0xa3826a[_0x7fc1('0x3f')],qs['fields'](_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0x41')]));_0x390456[_0x7fc1('0x40')]=_0x390456[_0x7fc1('0x40')][_0x7fc1('0x42')]?_0x390456[_0x7fc1('0x40')]:_0xa3826a[_0x7fc1('0x3f')];if(!_0x58fe4b['query'][_0x7fc1('0x43')](_0x7fc1('0x44'))){_0x390456[_0x7fc1('0x1a')]=qs[_0x7fc1('0x1a')](_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0x1a')]);_0x390456[_0x7fc1('0x18')]=qs[_0x7fc1('0x18')](_0x58fe4b[_0x7fc1('0x3d')]['offset']);}_0x390456[_0x7fc1('0x45')]=qs[_0x7fc1('0x46')](_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0x46')]);_0x390456[_0x7fc1('0x47')]=qs[_0x7fc1('0x48')](_[_0x7fc1('0x49')](_0x58fe4b[_0x7fc1('0x3d')],_0xa3826a[_0x7fc1('0x48')]));_0x390456[_0x7fc1('0x47')][_0x7fc1('0xb5')]=_0x24a3b8['id'];if(_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0x83')]){_0x390456['where']=_[_0x7fc1('0x98')](_0x390456['where'],{'$or':_[_0x7fc1('0x38')](_0x390456[_0x7fc1('0x40')],function(_0x5031db){var _0x3099e1={};_0x3099e1[_0x5031db]={'$like':'%'+_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0x83')]+'%'};return _0x3099e1;})});}if(_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0xc2')]){var _0x251305=_0x58fe4b['query']['$gte'][_0x7fc1('0x27')](',');var _0x25ecfe={};_0x25ecfe[_0x251305[0x0]]={'$gte':moment(_0x251305[0x1])[_0x7fc1('0xc3')](_0x7fc1('0xc4'))};_0x390456[_0x7fc1('0x47')]=_['merge'](_0x390456[_0x7fc1('0x47')],_0x25ecfe);}_0x390456=_[_0x7fc1('0x98')]({},_0x390456,_0x58fe4b[_0x7fc1('0xc5')]);return db['MailMessage']['count']({'where':_0x390456['where']})['then'](function(_0x13e7f7){_0x37bce6[_0x7fc1('0x1b')]=_0x13e7f7;if(_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0xba')]){_0x390456[_0x7fc1('0xbb')]=[{'all':!![]}];}return db['MailMessage'][_0x7fc1('0xc6')](_0x390456);})[_0x7fc1('0x1e')](function(_0x2fc5b2){if(_0x58fe4b[_0x7fc1('0x3d')][_0x7fc1('0xc7')]==='true'){for(var _0x1a462e=0x0;_0x1a462e<_0x2fc5b2[_0x7fc1('0x42')];_0x1a462e++){_0x2fc5b2[_0x1a462e][_0x7fc1('0xbc')]=juice(_0x2fc5b2[_0x1a462e][_0x7fc1('0xbc')]);}}_0x37bce6[_0x7fc1('0xb8')]=_0x2fc5b2;return _0x37bce6;});}})[_0x7fc1('0x1e')](respondWithFilteredResult(_0x51698f,_0x390456))['catch'](handleError(_0x51698f,null));};exports[_0x7fc1('0xc8')]=function(_0x48f27d,_0x4c326c){return db[_0x7fc1('0x39')][_0x7fc1('0x62')]({'where':{'id':_0x48f27d[_0x7fc1('0xbd')]['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x4c326c,null))['then'](function(_0x2f3cf3){if(_0x2f3cf3){return _0x2f3cf3[_0x7fc1('0xc9')](_0x48f27d[_0x7fc1('0xbc')][_0x7fc1('0xc0')],_['omit'](_0x48f27d[_0x7fc1('0xbc')],['ids','id'])||{})[_0x7fc1('0xca')](function(){return db[_0x7fc1('0x6e')][_0x7fc1('0xc6')]({'attributes':['id',_0x7fc1('0x22'),_0x7fc1('0x4c')],'where':{'id':_0x48f27d[_0x7fc1('0xbc')][_0x7fc1('0xc0')]}});})[_0x7fc1('0x1e')](function(_0x5105f6){socket[_0x7fc1('0xcb')](_0x7fc1('0xcc'),{'id':Number(_0x48f27d[_0x7fc1('0xbd')]['id']),'tags':_0x5105f6||[]});return{'id':Number(_0x48f27d[_0x7fc1('0xbd')]['id']),'tags':_0x5105f6||[]};});}})[_0x7fc1('0x1e')](respondWithResult(_0x4c326c,null))[_0x7fc1('0x2f')](handleError(_0x4c326c,null));};exports[_0x7fc1('0xcd')]=function(_0x354508,_0x210956){return db[_0x7fc1('0x39')][_0x7fc1('0x62')]({'where':{'id':_0x354508['params']['id']}})[_0x7fc1('0x1e')](handleEntityNotFound(_0x210956,null))[_0x7fc1('0x1e')](function(_0x16b0a0){if(_0x16b0a0){return _0x16b0a0[_0x7fc1('0xcd')](_0x354508[_0x7fc1('0x3d')][_0x7fc1('0xc0')]);}})[_0x7fc1('0x1e')](respondWithStatusCode(_0x210956,null))[_0x7fc1('0x2f')](handleError(_0x210956,null));};exports[_0x7fc1('0xce')]=function(_0x18447f,_0x391a33){var _0x3aadfe=moment()[_0x7fc1('0xcf')]()['toString']();var _0x4d75fc=path[_0x7fc1('0xd0')](config[_0x7fc1('0xd1')],_0x7fc1('0xd2'),_0x7fc1('0xd3'),'tmp');var _0x34ebfc=path[_0x7fc1('0xd0')](config[_0x7fc1('0xd1')],_0x7fc1('0xd2'),_0x7fc1('0xd3'),_0x7fc1('0xd4'));var _0x511072=path[_0x7fc1('0xd0')](_0x4d75fc,_0x3aadfe);var _0x3bff5a=util[_0x7fc1('0xc3')](_0x7fc1('0xd5'),_0x18447f[_0x7fc1('0xbd')]['id'],_0x3aadfe);var _0x5c17f1=path[_0x7fc1('0xd0')](_0x4d75fc,_0x3bff5a);var _0x181086=[];if(_0x18447f['query']['attachments']){_0x181086[_0x7fc1('0x28')]({'model':db[_0x7fc1('0xd6')],'as':_0x7fc1('0xd7'),'raw':!![]});}var _0x4866b8=[{'model':db[_0x7fc1('0xd8')],'as':'Messages','attributes':['id',_0x7fc1('0xbc'),_0x7fc1('0x4d'),'to','cc',_0x7fc1('0xd9'),_0x7fc1('0xda'),_0x7fc1('0x78')],'where':{'secret':![]},'order':qs[_0x7fc1('0x46')]('id'),'include':_0x181086}];return db[_0x7fc1('0x39')][_0x7fc1('0x62')]({'where':{'id':_0x18447f[_0x7fc1('0xbd')]['id']},'include':_0x4866b8})[_0x7fc1('0x1e')](handleEntityNotFound(_0x391a33,null))[_0x7fc1('0x1e')](function(_0x10cec8){if(_0x10cec8&&_0x10cec8[_0x7fc1('0xdb')]){var _0x18db07=_0x10cec8[_0x7fc1('0xdc')]({'plain':!![]});fs[_0x7fc1('0xdd')](_0x511072);return BPromise[_0x7fc1('0xde')](_0x18db07[_0x7fc1('0xdb')],function(_0x2325a7,_0x3d146a){var _0xbb1b6e={'from':_0x2325a7[_0x7fc1('0x4d')],'to':_0x2325a7['to'],'subject':_0x2325a7['subject'],'html':htmlEntities[_0x7fc1('0xdf')](_0x2325a7[_0x7fc1('0xbc')]),'headers':{'Date':moment(_0x2325a7[_0x7fc1('0x78')])[_0x7fc1('0xc3')](_0x7fc1('0xe0'))},'attachments':[]};if(_0x2325a7['cc']){_0xbb1b6e['headers']['Cc']=_0x2325a7['cc'];}if(_0x2325a7[_0x7fc1('0xd9')]){_0xbb1b6e[_0x7fc1('0xe1')]['Bcc']=_0x2325a7[_0x7fc1('0xd9')];}return new BPromise(function(_0x109c3b,_0x136f44){if(_0x2325a7[_0x7fc1('0xd7')]){for(var _0x467293=0x0;_0x467293<_0x2325a7['Attachments'][_0x7fc1('0x42')];_0x467293++){var _0x1fcd68=_0x2325a7[_0x7fc1('0xd7')][_0x467293];var _0x562e83=path[_0x7fc1('0xd0')](_0x34ebfc,_0x1fcd68[_0x7fc1('0xe2')]);if(fs[_0x7fc1('0xe3')](_0x562e83)){_0xbb1b6e[_0x7fc1('0xd4')][_0x7fc1('0x28')]({'name':_0x1fcd68['name'],'contentType':_0x1fcd68[_0x7fc1('0x3b')],'data':fs[_0x7fc1('0xe4')](_0x562e83)});}}}emlformat[_0x7fc1('0xe5')](_0xbb1b6e,function(_0x3d09c7,_0x598617){if(_0x3d09c7)return _0x136f44(_0x3d09c7);fs[_0x7fc1('0xe6')](path[_0x7fc1('0xd0')](_0x511072,util[_0x7fc1('0xc3')](_0x7fc1('0xe7'),_0x3d146a)),_0x598617);return _0x109c3b(_0x598617);});});})[_0x7fc1('0x1e')](function(){return new BPromise(function(_0x221d97,_0x4cd0b4){zipdir(_0x511072,{'saveTo':_0x5c17f1},function(_0x2316db,_0x7860b){if(_0x2316db)return _0x4cd0b4(_0x2316db);return _0x221d97(_0x7860b);});})[_0x7fc1('0x1e')](function(){return new BPromise(function(_0x1e2887,_0x5d2b3a){rimraf(_0x511072,function(_0x4bb095){if(_0x4bb095)_0x5d2b3a(_0x4bb095);return _0x1e2887();});});})['then'](function(){return _0x391a33['download'](_0x5c17f1,_0x3bff5a,function(_0x2d2721){if(!_0x2d2721)fs['unlinkSync'](_0x5c17f1);});});});}else{return _0x391a33['sendStatus'](0xc8);}})[_0x7fc1('0x2f')](handleError(_0x391a33,null));};
\ No newline at end of file