Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 1ba7ac0..d5a4154 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3e0c=['`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','isEmail','c.email\x20LIKE\x20?','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','isEmpty','t.id\x20IN\x20?','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','agent','getMailAccounts','i.MailAccountId\x20IS\x20NULL','role','sequelize','toString','keyBy','merge','Account.key','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.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.subject','i.disposition','i.secondDisposition','i.thirdDisposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','Contact.firstName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','MailInteractionId','Setting','enableEmailPreview','all','catch','show','MailInteraction','includeAll','options','create','body','params','describe','addMessage','ids','omit','getMessages','rawAttributes','order','$gte','format','YYYY-MM-DD\x20HH:mm:ss','include','findAll','inlineCss','true','rows','addTags','setTags','spread','emit','mailInteractionTags:save','removeTags','download','unix','join','server','root','attachments','transcript-%d-%s.zip','Attachment','Attachments','Messages','bcc','subject','mkdirSync','each','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','bluebird','util','path','lodash','squel','ioredis','../../config/environment','../../mysqldb','html-entities','socket.io-emitter','redis','./mailInteraction.socket','register','status','offset','undefined','limit','count','set','Content-Range','json','update','destroy','then','end','sendStatus','error','name','send','Users','map','TagIds','Tags','split','forEach','push','MailMessage','findOne','out','plainBody','-id','lastMsgText','trimStart','talking','unmanaged','total','closed','UserId','waiting','answered','fieldName','type','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','pick','select','field','color','from','u.id','u.fullname','ui.MailInteractionId','u.id\x20=\x20ui.UserId','mail_interactions','left_join','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','users','mail_accounts','mail_messages','me.MailInteractionId\x20=\x20i.id','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','find','unreadMessages','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','start','some','compact','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$lte','where','null','\x20IS\x20NULL','\x20=\x20?','read'];(function(_0xb38d5,_0x505a27){var _0x536ddf=function(_0xed1b47){while(--_0xed1b47){_0xb38d5['push'](_0xb38d5['shift']());}};_0x536ddf(++_0x505a27);}(_0x3e0c,0x16d));var _0xc3e0=function(_0x536696,_0x5e2859){_0x536696=_0x536696-0x0;var _0x2c3bea=_0x3e0c[_0x536696];return _0x2c3bea;};'use strict';var emlformat=require(_0xc3e0('0x0'));var rimraf=require(_0xc3e0('0x1'));var zipdir=require(_0xc3e0('0x2'));var moment=require('moment');var BPromise=require(_0xc3e0('0x3'));var util=require(_0xc3e0('0x4'));var path=require(_0xc3e0('0x5'));var fs=require('fs');var _=require(_0xc3e0('0x6'));var squel=require(_0xc3e0('0x7'));var juice=require('juice');var Redis=require(_0xc3e0('0x8'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var logger=require('../../config/logger')('api');var config=require(_0xc3e0('0x9'));var db=require(_0xc3e0('0xa'))['db'];var htmlEntities=require(_0xc3e0('0xb'));config['redis']=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0xc3e0('0xc'))(new Redis(config[_0xc3e0('0xd')]));require(_0xc3e0('0xe'))[_0xc3e0('0xf')](socket);function respondWithStatusCode(_0x3f38c5,_0x3b9433){_0x3b9433=_0x3b9433||0xcc;return function(_0x1e987e){if(_0x1e987e){return _0x3f38c5['sendStatus'](_0x3b9433);}return _0x3f38c5[_0xc3e0('0x10')](_0x3b9433)['end']();};}function respondWithResult(_0x3be6f1,_0x13e297){_0x13e297=_0x13e297||0xc8;return function(_0x485fc4){if(_0x485fc4){return _0x3be6f1[_0xc3e0('0x10')](_0x13e297)['json'](_0x485fc4);}};}function respondWithFilteredResult(_0x4077d3,_0xd54e26){return function(_0x1c5e25){if(_0x1c5e25){var _0x18c9f7=typeof _0xd54e26[_0xc3e0('0x11')]===_0xc3e0('0x12')&&typeof _0xd54e26[_0xc3e0('0x13')]==='undefined';var _0x23f3b8=_0x1c5e25[_0xc3e0('0x14')];var _0x5a1e1a=_0x18c9f7?0x0:_0xd54e26[_0xc3e0('0x11')];var _0x10aa37=_0x18c9f7?_0x1c5e25[_0xc3e0('0x14')]:_0xd54e26[_0xc3e0('0x11')]+_0xd54e26[_0xc3e0('0x13')];var _0x4412c0;if(_0x10aa37>=_0x23f3b8){_0x10aa37=_0x23f3b8;_0x4412c0=0xc8;}else{_0x4412c0=0xce;}_0x4077d3[_0xc3e0('0x10')](_0x4412c0);return _0x4077d3[_0xc3e0('0x15')](_0xc3e0('0x16'),_0x5a1e1a+'-'+_0x10aa37+'/'+_0x23f3b8)[_0xc3e0('0x17')](_0x1c5e25);}return null;};}function saveUpdates(_0x6b3666){return function(_0x124272){if(_0x124272){return _0x124272[_0xc3e0('0x18')](_0x6b3666)['then'](function(_0x238f0e){return _0x238f0e;});}return null;};}function removeEntity(_0x46b141){return function(_0x4d1f8a){if(_0x4d1f8a){return _0x4d1f8a[_0xc3e0('0x19')]()[_0xc3e0('0x1a')](function(){_0x46b141['status'](0xcc)[_0xc3e0('0x1b')]();});}};}function handleEntityNotFound(_0x538f1e){return function(_0x3118ed){if(!_0x3118ed){_0x538f1e[_0xc3e0('0x1c')](0x194);}return _0x3118ed;};}function handleError(_0x1ff14b,_0x572473){_0x572473=_0x572473||0x1f4;return function(_0x5aa29b){logger[_0xc3e0('0x1d')](_0x5aa29b['stack']);if(_0x5aa29b[_0xc3e0('0x1e')]){delete _0x5aa29b['name'];}_0x1ff14b[_0xc3e0('0x10')](_0x572473)[_0xc3e0('0x1f')](_0x5aa29b);};}function getInteractionUsers(_0x5d38a1,_0x7218b3){return new BPromise(function(_0x4c6b62,_0x278e27){try{if(_0x7218b3[_0x5d38a1['id']]){_0x5d38a1[_0xc3e0('0x20')]=_[_0xc3e0('0x21')](_0x7218b3[_0x5d38a1['id']],function(_0x40390d){return{'id':_0x40390d['id'],'fullname':_0x40390d['fullname']};});}}catch(_0x159a67){_0x278e27(_0x159a67);}_0x4c6b62(_0x5d38a1);});}function getInteractionTags(_0x3b4df3,_0x56599b){return new BPromise(function(_0xe36f13,_0x25ddaf){try{if(_0x3b4df3[_0xc3e0('0x22')]){_0x3b4df3[_0xc3e0('0x23')]=[];_0x3b4df3['TagIds'][_0xc3e0('0x24')](',')[_0xc3e0('0x25')](function(_0x3d84fb){_0x3b4df3[_0xc3e0('0x23')][_0xc3e0('0x26')](_0x56599b[_0x3d84fb]);});}delete _0x3b4df3[_0xc3e0('0x22')];}catch(_0x4adb8e){_0x25ddaf(_0x4adb8e);}_0xe36f13(_0x3b4df3);});}function getLastMessageText(_0x477f6f){return new BPromise(function(_0x357d75,_0x412cb5){return db[_0xc3e0('0x27')][_0xc3e0('0x28')]({'where':{'$and':[{'MailInteractionId':_0x477f6f['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0xc3e0('0x29')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':[_0xc3e0('0x2a')],'order':_0xc3e0('0x2b'),'raw':!![]})[_0xc3e0('0x1a')](function(_0x3c9189){if(_0x3c9189&&_0x3c9189[_0xc3e0('0x2a')]){_0x477f6f[_0xc3e0('0x2c')]=_[_0xc3e0('0x2d')](_0x3c9189[_0xc3e0('0x2a')]);}_0x357d75(_0x477f6f);})['catch'](function(_0xc4613e){_0x412cb5(_0xc4613e);});});}function updateMailInteraction(_0x1d915c,_0x42b828,_0x16d6a7,_0x2599ed){return new BPromise(function(_0x4ab8a9,_0x80721b){return getInteractionUsers(_0x1d915c,_0x16d6a7)['then'](function(_0x1589d1){return getInteractionTags(_0x1589d1,_0x42b828);})[_0xc3e0('0x1a')](function(_0x30a3b6){return getStateInteraction(_0x30a3b6);})[_0xc3e0('0x1a')](function(_0x622f89){if(_0x2599ed){_0x4ab8a9(getLastMessageText(_0x622f89));}else{_0x4ab8a9(_0x622f89);}})['catch'](function(_0x2fbe08){_0x80721b(_0x2fbe08);});});}function getStateInteraction(_0x2b393c){return new BPromise(function(_0x55e06b){_0x2b393c['waiting']=0x0;_0x2b393c[_0xc3e0('0x2e')]=0x0;_0x2b393c['answered']=0x0;_0x2b393c[_0xc3e0('0x2f')]=0x0;_0x2b393c[_0xc3e0('0x30')]=0x0;if(!_0x2b393c[_0xc3e0('0x31')]&&!_0x2b393c[_0xc3e0('0x32')]){_0x2b393c[_0xc3e0('0x33')]+=0x1;}if(!_0x2b393c[_0xc3e0('0x31')]&&_0x2b393c[_0xc3e0('0x32')]){_0x2b393c[_0xc3e0('0x2e')]+=0x1;if(_0x2b393c[_0xc3e0('0x33')]){_0x2b393c['waiting']-=0x1;}}if(_0x2b393c[_0xc3e0('0x31')]&&_0x2b393c['UserId']){_0x2b393c[_0xc3e0('0x34')]+=0x1;if(_0x2b393c[_0xc3e0('0x2e')]){_0x2b393c['talking']-=0x1;}}if(_0x2b393c['closed']&&!_0x2b393c['UserId']){_0x2b393c[_0xc3e0('0x2f')]+=0x1;if(_0x2b393c['waiting']){_0x2b393c[_0xc3e0('0x33')]-=0x1;}}_0x2b393c[_0xc3e0('0x30')]+=0x1;_0x55e06b(_0x2b393c);});}exports['index']=function(_0x3dec8a,_0x478b13){var _0x4a4484={},_0x23f60a={},_0x3fea79={'count':0x0,'rows':[]};var _0x4df111=_[_0xc3e0('0x21')](db['MailInteraction']['rawAttributes'],function(_0x4185de){return{'name':_0x4185de[_0xc3e0('0x35')],'type':_0x4185de[_0xc3e0('0x36')]['key']};});_0x23f60a[_0xc3e0('0x37')]=_[_0xc3e0('0x21')](_0x4df111,_0xc3e0('0x1e'));_0x23f60a[_0xc3e0('0x38')]=_[_0xc3e0('0x39')](_0x3dec8a[_0xc3e0('0x38')]);_0x23f60a[_0xc3e0('0x3a')]=_[_0xc3e0('0x3b')](_0x23f60a[_0xc3e0('0x37')],_0x23f60a[_0xc3e0('0x38')]);_0x4a4484[_0xc3e0('0x3c')]=_[_0xc3e0('0x3b')](_0x23f60a['model'],qs[_0xc3e0('0x3d')](_0x3dec8a['query'][_0xc3e0('0x3d')]));_0x4a4484[_0xc3e0('0x3c')]=_0x4a4484[_0xc3e0('0x3c')][_0xc3e0('0x3e')]?_0x4a4484[_0xc3e0('0x3c')]:_0x23f60a[_0xc3e0('0x37')];if(!_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x3f')](_0xc3e0('0x40'))){_0x4a4484[_0xc3e0('0x13')]=qs[_0xc3e0('0x13')](_0x3dec8a['query'][_0xc3e0('0x13')]);_0x4a4484[_0xc3e0('0x11')]=qs[_0xc3e0('0x11')](_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x11')]);}_0x4a4484['order']=qs[_0xc3e0('0x41')](_0x3dec8a[_0xc3e0('0x38')]['sort']);_0x4a4484['where']=qs[_0xc3e0('0x3a')](_[_0xc3e0('0x42')](_0x3dec8a[_0xc3e0('0x38')],_0x23f60a[_0xc3e0('0x3a')]),_0x4df111);var _0x845103=[];var _0x4c7906=squel[_0xc3e0('0x43')]()[_0xc3e0('0x44')]('id')[_0xc3e0('0x44')](_0xc3e0('0x1e'))[_0xc3e0('0x44')](_0xc3e0('0x45'))[_0xc3e0('0x46')]('tools_tags');var _0x9f6a4d=squel[_0xc3e0('0x43')]()['field'](_0xc3e0('0x47'))[_0xc3e0('0x44')](_0xc3e0('0x48'))['field'](_0xc3e0('0x49'))[_0xc3e0('0x46')]('user_has_mail_interactions','ui')['left_join']('users','u',_0xc3e0('0x4a'));var _0x142c2d=squel[_0xc3e0('0x43')]()[_0xc3e0('0x46')](_0xc3e0('0x4b'),'i')[_0xc3e0('0x4c')](_0xc3e0('0x4d'),'c',_0xc3e0('0x4e'))['left_join'](_0xc3e0('0x4f'),'o','o.id\x20=\x20i.UserId')[_0xc3e0('0x4c')](_0xc3e0('0x50'),'a','a.id\x20=\x20i.MailAccountId')[_0xc3e0('0x4c')](_0xc3e0('0x51'),'me',_0xc3e0('0x52'))['left_join'](_0xc3e0('0x53'),'it',_0xc3e0('0x54'))[_0xc3e0('0x4c')](_0xc3e0('0x55'),'t',_0xc3e0('0x56'));var _0x2647f4=squel[_0xc3e0('0x57')]();var _0x4d71be=[];var _0x25221c=squel['expr']();var _0x11ea48;if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x58')]){_0x11ea48=as[_0xc3e0('0x59')](_0x3dec8a['query'][_0xc3e0('0x58')]);var _0xfb6452=_0x11ea48[_0xc3e0('0x5a')];for(var _0x124cd2=0x0;_0x124cd2<_0x11ea48[_0xc3e0('0x5b')][_0xc3e0('0x3e')];_0x124cd2++){var _0x403615=_0x11ea48[_0xc3e0('0x5b')][_0x124cd2];var _0x49e7ed='i';var _0x356e27=_[_0xc3e0('0x5c')](_0x4df111,[_0xc3e0('0x1e'),_0x403615[_0xc3e0('0x44')]]);if(!_0x356e27){switch(_0x403615['field']){case _0xc3e0('0x5d'):if(_0x403615['value']==0x1){_0x142c2d[_0xc3e0('0x5e')]('`'+_0x403615[_0xc3e0('0x44')]+_0xc3e0('0x5f'));}else{_0x142c2d[_0xc3e0('0x5e')]('`'+_0x403615[_0xc3e0('0x44')]+_0xc3e0('0x60'));}break;case _0xc3e0('0x61'):if(_0x403615[_0xc3e0('0x62')]===_0xc3e0('0x63')){if(_0x403615[_0xc3e0('0x64')][_0xc3e0('0x24')]('\x20')['length']>0x1){_0x2647f4[_0xfb6452]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xc3e0('0x65')](_0x403615[_0xc3e0('0x64')]),null);}else{var _0x1f7800='%'+_0x403615[_0xc3e0('0x64')]+'%';_0x2647f4[_0xfb6452](_0xc3e0('0x66'),_0x1f7800,_0x1f7800,_0x1f7800);}}else{_0x356e27=_[_0xc3e0('0x5c')](_0x4df111,['name',_0xc3e0('0x67')]);_0x403615[_0xc3e0('0x44')]='ContactId';_0x5d31a5=as[_0xc3e0('0x68')](_0x49e7ed,_0x356e27[_0xc3e0('0x36')],_0x403615);_0x2647f4[_0xfb6452](_0x5d31a5[_0xc3e0('0x69')],_0x5d31a5['value']['start'],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x1b')]);}break;case _0xc3e0('0x6a'):var _0x5a58e3=_0x403615[_0xc3e0('0x64')][_0xc3e0('0x24')](',')['map'](function(_0x42492e){return Number(_0x42492e);});_0x5a58e3['forEach'](function(_0x72c82c){_0x25221c['or'](_0xc3e0('0x6b'),'%,'+_0x72c82c+',%');});_0x4d71be=_[_0xc3e0('0x6c')](_0x4d71be,_0x5a58e3);break;case'User':if(_0x403615['operator']===_0xc3e0('0x63')){_0x2647f4[_0xfb6452]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x403615['value']+'%',null);}else{_0x356e27=_[_0xc3e0('0x5c')](_0x4df111,[_0xc3e0('0x1e'),_0xc3e0('0x32')]);_0x403615['field']='UserId';_0x5d31a5=as[_0xc3e0('0x68')](_0x49e7ed,_0x356e27[_0xc3e0('0x36')],_0x403615);_0x2647f4[_0xfb6452](_0x5d31a5[_0xc3e0('0x69')],_0x5d31a5['value'][_0xc3e0('0x6d')],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x1b')]);}break;case'plainBody':_0x5d31a5=as[_0xc3e0('0x68')]('me',null,_0x403615);_0x2647f4[_0xfb6452](_0x5d31a5[_0xc3e0('0x69')],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x6d')],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x1b')]);break;}}else{var _0x5d31a5=as['buildExpression'](_0x49e7ed,_0x356e27[_0xc3e0('0x36')],_0x403615);_0x2647f4[_0xfb6452](_0x5d31a5[_0xc3e0('0x69')],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x6d')],_0x5d31a5[_0xc3e0('0x64')][_0xc3e0('0x1b')]);}}}else{var _0x2ce885=_(_0x3dec8a['query'])[_0xc3e0('0x39')]()[_0xc3e0('0x21')](function(_0x3d98b9){return _[_0xc3e0('0x6e')](_0x4df111,[_0xc3e0('0x1e'),_0x3d98b9])?_0x3d98b9:undefined;})[_0xc3e0('0x6f')]()['value']();if(!_['isEmpty'](_0x2ce885)){_0x2ce885['forEach'](function(_0x531d79){if(_0x531d79===_0xc3e0('0x70')){_0x142c2d['where'](_0xc3e0('0x71'),[][_0xc3e0('0x72')](_0x3dec8a['query'][_0x531d79]));}else if(_0x531d79===_0xc3e0('0x73')){var _0x52bccc=JSON[_0xc3e0('0x74')](_0x3dec8a[_0xc3e0('0x38')][_0x531d79])['$gte'];var _0x42a0fb=JSON[_0xc3e0('0x74')](_0x3dec8a['query'][_0x531d79])[_0xc3e0('0x75')];_0x142c2d[_0xc3e0('0x76')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x52bccc,_0x42a0fb);}else{if(_0x3dec8a[_0xc3e0('0x38')][_0x531d79]===_0xc3e0('0x77')){_0x142c2d[_0xc3e0('0x76')]('i.'+_0x531d79+_0xc3e0('0x78'));}else{_0x142c2d[_0xc3e0('0x76')]('i.'+_0x531d79+_0xc3e0('0x79'),_0x3dec8a[_0xc3e0('0x38')][_0x531d79]);}}});}if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x7a')]){if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x7a')]==0x1){_0x142c2d[_0xc3e0('0x5e')]('`unreadMessages`\x20=\x200');}else{_0x142c2d[_0xc3e0('0x5e')](_0xc3e0('0x7b'));}}if(_0x3dec8a['query'][_0xc3e0('0x7c')]){_0x4d71be=_[_0xc3e0('0x7d')](_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x7c')])?_0x3dec8a[_0xc3e0('0x38')]['tag']:new Array(_0x3dec8a['query'][_0xc3e0('0x7c')]);_0x4d71be[_0xc3e0('0x25')](function(_0x4fddab){_0x25221c['or'](_0xc3e0('0x6b'),'%,'+_0x4fddab+',%');});}if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x7e')]){var _0x737d18=_0x3dec8a['query'][_0xc3e0('0x7e')][_0xc3e0('0x7f')]('\x5c','\x5c\x5c')[_0xc3e0('0x7f')](/'/g,'\x27\x27');if(qs[_0xc3e0('0x80')](_0x737d18)){_0x2647f4['or']('i.id\x20LIKE\x20?',_0x737d18+'%');}else if(qs[_0xc3e0('0x81')](_0x737d18)){_0x2647f4['or'](_0xc3e0('0x82'),_0x737d18+'%');}else{_0x2647f4['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xc3e0('0x65')](_0x737d18))['or'](_0xc3e0('0x83'),qs[_0xc3e0('0x65')](_0x737d18));}}}_0x142c2d[_0xc3e0('0x76')](_0x2647f4);_0x142c2d[_0xc3e0('0x84')](_0xc3e0('0x85'));var _0x4b16ea={'type':db[_0xc3e0('0x86')][_0xc3e0('0x87')][_0xc3e0('0x88')],'raw':!![]};var _0x2b3328=_0x142c2d[_0xc3e0('0x89')]();_0x2b3328[_0xc3e0('0x44')](_0xc3e0('0x85'));_0x2b3328[_0xc3e0('0x44')](_0xc3e0('0x8a'),_0xc3e0('0x5d'));if(_0x4a4484['order']){_0x4a4484['order'][_0xc3e0('0x25')](function(_0x38e9e7){var _0x31310c=_0x38e9e7[0x0]===_0xc3e0('0x8b')?_0x38e9e7[0x0]:'i.'+_0x38e9e7[0x0];_0x142c2d['order'](_0x31310c,_0x38e9e7[0x1]===_0xc3e0('0x8c')?![]:!![]);});}if(!_[_0xc3e0('0x8d')](_0x4d71be)){_0x142c2d[_0xc3e0('0x5e')](_0x25221c);_0x2b3328[_0xc3e0('0x76')](_0xc3e0('0x8e'),_0x4d71be);}BPromise[_0xc3e0('0x8f')]()[_0xc3e0('0x1a')](function(){if(!_0x11ea48){if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x70')])return;_0x2b3328[_0xc3e0('0x76')](_0xc3e0('0x90'));_0x142c2d[_0xc3e0('0x76')](_0xc3e0('0x90'));return;}if(_0x3dec8a['user']['role']!==_0xc3e0('0x91'))return;return _0x3dec8a['user'][_0xc3e0('0x92')]({'attributes':['id'],'raw':!![]})[_0xc3e0('0x1a')](function(_0x3e31de){if(_['isEmpty'](_0x3e31de)){_0x2b3328['where'](_0xc3e0('0x93'));_0x142c2d[_0xc3e0('0x76')](_0xc3e0('0x93'));}else{_0x2b3328[_0xc3e0('0x76')](_0xc3e0('0x71'),_[_0xc3e0('0x21')](_0x3e31de,'id'));_0x142c2d[_0xc3e0('0x76')](_0xc3e0('0x71'),_['map'](_0x3e31de,'id'));}});})[_0xc3e0('0x1a')](function(){if(_0x3dec8a['user'][_0xc3e0('0x94')]===_0xc3e0('0x91')&&!_0x11ea48&&!_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x70')])return[];return db[_0xc3e0('0x95')][_0xc3e0('0x38')](_0x2b3328['toString'](),_0x4b16ea);})[_0xc3e0('0x1a')](function(_0x3cef8c){_0x3fea79[_0xc3e0('0x14')]=_0x3cef8c[_0xc3e0('0x3e')];if(_0x3fea79['count']===0x0)return[];return db['sequelize']['query'](_0x4c7906[_0xc3e0('0x96')](),_0x4b16ea)[_0xc3e0('0x1a')](function(_0x54f401){_0x845103=_[_0xc3e0('0x97')](_0x54f401,'id');_0x4b16ea=_[_0xc3e0('0x98')](_0x4b16ea,{'model':db['MailInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3dec8a[_0xc3e0('0x38')][_0xc3e0('0x3d')]){_0x4a4484['attributes'][_0xc3e0('0x25')](function(_0x102da2){_0x142c2d[_0xc3e0('0x44')]('i.'+_0x102da2);});}else{_0x142c2d[_0xc3e0('0x44')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xc3e0('0x5d'));_0x142c2d[_0xc3e0('0x44')]('a.key',_0xc3e0('0x99'));_0x142c2d[_0xc3e0('0x44')]('a.mandatoryDisposition',_0xc3e0('0x9a'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0x9b'),'contactName');_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0x85'));_0x142c2d[_0xc3e0('0x44')]('i.createdAt');_0x142c2d['field'](_0xc3e0('0x9c'));_0x142c2d['field'](_0xc3e0('0x9d'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0x9e'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0x9f'));_0x142c2d['field'](_0xc3e0('0xa0'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa1'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa2'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa3'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa4'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa5'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa6'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa7'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa8'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xa9'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xaa'));_0x142c2d['field'](_0xc3e0('0xab'),_0xc3e0('0xac'));_0x142c2d[_0xc3e0('0x44')]('c.lastName','Contact.lastName');_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xad'),_0xc3e0('0xae'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xaf'),_0xc3e0('0xb0'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xb1'),_0xc3e0('0xb2'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xb3'),_0xc3e0('0xb4'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xb5'),_0xc3e0('0xb6'));_0x142c2d['field'](_0xc3e0('0xb7'),_0xc3e0('0xb8'));_0x142c2d[_0xc3e0('0x44')](_0xc3e0('0xb9'),'TagIds');}if(_0x4a4484['limit'])_0x142c2d['limit'](_0x4a4484[_0xc3e0('0x13')]);if(_0x4a4484['offset'])_0x142c2d[_0xc3e0('0x11')](_0x4a4484[_0xc3e0('0x11')]);return db[_0xc3e0('0x95')]['query'](_0x142c2d[_0xc3e0('0x96')](),_0x4b16ea);})[_0xc3e0('0x1a')](function(_0x46fc23){if(_0x46fc23['length']>0x0)_0x9f6a4d[_0xc3e0('0x76')]('ui.MailInteractionId\x20IN\x20?',_[_0xc3e0('0x21')](_0x46fc23,'id'));return db[_0xc3e0('0x95')][_0xc3e0('0x38')](_0x9f6a4d[_0xc3e0('0x96')](),_0x4b16ea)[_0xc3e0('0x1a')](function(_0x18c737){var _0x41fc56=_[_0xc3e0('0xba')](_0x18c737,_0xc3e0('0xbb'));var _0x57562a=[];return db[_0xc3e0('0xbc')][_0xc3e0('0x28')]({'attributes':['enableEmailPreview'],'raw':!![]})[_0xc3e0('0x1a')](function(_0x52141a){var _0x4c5ae1=_0x52141a[_0xc3e0('0xbd')];_0x46fc23[_0xc3e0('0x25')](function(_0x107452){_0x57562a[_0xc3e0('0x26')](updateMailInteraction(_0x107452,_0x845103,_0x41fc56,_0x4c5ae1));});return BPromise[_0xc3e0('0xbe')](_0x57562a);});});});})[_0xc3e0('0x1a')](function(_0x4ae302){_0x3fea79['rows']=_0x4ae302;return _0x3fea79;})[_0xc3e0('0x1a')](respondWithFilteredResult(_0x478b13,_0x4a4484))[_0xc3e0('0xbf')](handleError(_0x478b13,null));};exports[_0xc3e0('0xc0')]=function(_0x5b2196,_0x520d3b){var _0x2affa0={'raw':![],'where':{'id':_0x5b2196['params']['id']}},_0xb39a2d={};_0xb39a2d[_0xc3e0('0x37')]=_[_0xc3e0('0x39')](db[_0xc3e0('0xc1')]['rawAttributes']);_0xb39a2d['query']=_[_0xc3e0('0x39')](_0x5b2196['query']);_0xb39a2d[_0xc3e0('0x3a')]=_[_0xc3e0('0x3b')](_0xb39a2d[_0xc3e0('0x37')],_0xb39a2d[_0xc3e0('0x38')]);_0x2affa0[_0xc3e0('0x3c')]=_['intersection'](_0xb39a2d[_0xc3e0('0x37')],qs[_0xc3e0('0x3d')](_0x5b2196[_0xc3e0('0x38')][_0xc3e0('0x3d')]));_0x2affa0[_0xc3e0('0x3c')]=_0x2affa0[_0xc3e0('0x3c')][_0xc3e0('0x3e')]?_0x2affa0[_0xc3e0('0x3c')]:_0xb39a2d[_0xc3e0('0x37')];if(_0x5b2196[_0xc3e0('0x38')][_0xc3e0('0xc2')]){_0x2affa0['include']=[{'all':!![]}];}_0x2affa0=_[_0xc3e0('0x98')]({},_0x2affa0,_0x5b2196[_0xc3e0('0xc3')]);return db[_0xc3e0('0xc1')][_0xc3e0('0x5c')](_0x2affa0)[_0xc3e0('0x1a')](handleEntityNotFound(_0x520d3b,null))[_0xc3e0('0x1a')](respondWithResult(_0x520d3b,null))[_0xc3e0('0xbf')](handleError(_0x520d3b,null));};exports[_0xc3e0('0xc4')]=function(_0x217913,_0x516eeb){return db[_0xc3e0('0xc1')]['create'](_0x217913[_0xc3e0('0xc5')],{})['then'](respondWithResult(_0x516eeb,0xc9))[_0xc3e0('0xbf')](handleError(_0x516eeb,null));};exports[_0xc3e0('0x18')]=function(_0x5e245e,_0x1f8d69){if(_0x5e245e[_0xc3e0('0xc5')]['id']){delete _0x5e245e[_0xc3e0('0xc5')]['id'];}return db[_0xc3e0('0xc1')][_0xc3e0('0x5c')]({'where':{'id':_0x5e245e[_0xc3e0('0xc6')]['id']}})[_0xc3e0('0x1a')](handleEntityNotFound(_0x1f8d69,null))['then'](saveUpdates(_0x5e245e[_0xc3e0('0xc5')],null))[_0xc3e0('0x1a')](respondWithResult(_0x1f8d69,null))['catch'](handleError(_0x1f8d69,null));};exports[_0xc3e0('0x19')]=function(_0x16a43a,_0x570f63){return db[_0xc3e0('0xc1')]['find']({'where':{'id':_0x16a43a[_0xc3e0('0xc6')]['id']}})['then'](handleEntityNotFound(_0x570f63,null))[_0xc3e0('0x1a')](removeEntity(_0x570f63,null))[_0xc3e0('0xbf')](handleError(_0x570f63,null));};exports[_0xc3e0('0xc7')]=function(_0x37a6cb,_0x25145e){return db['MailInteraction'][_0xc3e0('0xc7')]()['then'](respondWithResult(_0x25145e,null))[_0xc3e0('0xbf')](handleError(_0x25145e,null));};exports['addMessage']=function(_0x3e7013,_0x5a219a){return db[_0xc3e0('0x27')][_0xc3e0('0x5c')]({'where':{'id':_0x3e7013[_0xc3e0('0xc6')]['id']}})['then'](handleEntityNotFound(_0x5a219a,null))[_0xc3e0('0x1a')](function(_0x491e79){if(_0x491e79){return _0x491e79[_0xc3e0('0xc8')](_0x3e7013['body'][_0xc3e0('0xc9')],_[_0xc3e0('0xca')](_0x3e7013[_0xc3e0('0xc5')],[_0xc3e0('0xc9'),'id'])||{});}})['then'](respondWithResult(_0x5a219a,null))[_0xc3e0('0xbf')](handleError(_0x5a219a,null));};exports[_0xc3e0('0xcb')]=function(_0x304f87,_0x4a443c){var _0x792c1f={'raw':![],'where':{}};var _0x45a524={};var _0x2d880b={'count':0x0,'rows':[]};return db[_0xc3e0('0xc1')][_0xc3e0('0x28')]({'where':{'id':_0x304f87[_0xc3e0('0xc6')]['id']}})['then'](handleEntityNotFound(_0x4a443c,null))[_0xc3e0('0x1a')](function(_0x2b7205){if(_0x2b7205){_0x45a524[_0xc3e0('0x37')]=_['keys'](db[_0xc3e0('0x27')][_0xc3e0('0xcc')]);_0x45a524['query']=_[_0xc3e0('0x39')](_0x304f87[_0xc3e0('0x38')]);_0x45a524[_0xc3e0('0x3a')]=_[_0xc3e0('0x3b')](_0x45a524[_0xc3e0('0x37')],_0x45a524['query']);_0x792c1f[_0xc3e0('0x3c')]=_[_0xc3e0('0x3b')](_0x45a524[_0xc3e0('0x37')],qs[_0xc3e0('0x3d')](_0x304f87[_0xc3e0('0x38')][_0xc3e0('0x3d')]));_0x792c1f['attributes']=_0x792c1f[_0xc3e0('0x3c')][_0xc3e0('0x3e')]?_0x792c1f[_0xc3e0('0x3c')]:_0x45a524[_0xc3e0('0x37')];if(!_0x304f87[_0xc3e0('0x38')][_0xc3e0('0x3f')]('nolimit')){_0x792c1f['limit']=qs[_0xc3e0('0x13')](_0x304f87[_0xc3e0('0x38')][_0xc3e0('0x13')]);_0x792c1f['offset']=qs[_0xc3e0('0x11')](_0x304f87['query'][_0xc3e0('0x11')]);}_0x792c1f[_0xc3e0('0xcd')]=qs['sort'](_0x304f87['query']['sort']);_0x792c1f['where']=qs[_0xc3e0('0x3a')](_[_0xc3e0('0x42')](_0x304f87[_0xc3e0('0x38')],_0x45a524[_0xc3e0('0x3a')]));_0x792c1f[_0xc3e0('0x76')][_0xc3e0('0xbb')]=_0x2b7205['id'];if(_0x304f87[_0xc3e0('0x38')][_0xc3e0('0x7e')]){_0x792c1f[_0xc3e0('0x76')]=_['merge'](_0x792c1f[_0xc3e0('0x76')],{'$or':_[_0xc3e0('0x21')](_0x792c1f[_0xc3e0('0x3c')],function(_0x1f885c){var _0xeab558={};_0xeab558[_0x1f885c]={'$like':'%'+_0x304f87[_0xc3e0('0x38')][_0xc3e0('0x7e')]+'%'};return _0xeab558;})});}if(_0x304f87['query'][_0xc3e0('0xce')]){var _0x29023a=_0x304f87[_0xc3e0('0x38')][_0xc3e0('0xce')][_0xc3e0('0x24')](',');var _0x223386={};_0x223386[_0x29023a[0x0]]={'$gte':moment(_0x29023a[0x1])[_0xc3e0('0xcf')](_0xc3e0('0xd0'))};_0x792c1f[_0xc3e0('0x76')]=_[_0xc3e0('0x98')](_0x792c1f[_0xc3e0('0x76')],_0x223386);}_0x792c1f=_[_0xc3e0('0x98')]({},_0x792c1f,_0x304f87[_0xc3e0('0xc3')]);return db['MailMessage'][_0xc3e0('0x14')]({'where':_0x792c1f[_0xc3e0('0x76')]})[_0xc3e0('0x1a')](function(_0x38a24d){_0x2d880b[_0xc3e0('0x14')]=_0x38a24d;if(_0x304f87[_0xc3e0('0x38')]['includeAll']){_0x792c1f[_0xc3e0('0xd1')]=[{'all':!![]}];}return db[_0xc3e0('0x27')][_0xc3e0('0xd2')](_0x792c1f);})['then'](function(_0x2a375f){if(_0x304f87['query'][_0xc3e0('0xd3')]===_0xc3e0('0xd4')){for(var _0x1f527f=0x0;_0x1f527f<_0x2a375f[_0xc3e0('0x3e')];_0x1f527f++){_0x2a375f[_0x1f527f]['body']=juice(_0x2a375f[_0x1f527f][_0xc3e0('0xc5')]);}}_0x2d880b[_0xc3e0('0xd5')]=_0x2a375f;return _0x2d880b;});}})[_0xc3e0('0x1a')](respondWithFilteredResult(_0x4a443c,_0x792c1f))[_0xc3e0('0xbf')](handleError(_0x4a443c,null));};exports[_0xc3e0('0xd6')]=function(_0x114e47,_0x3f9526){return db['MailInteraction']['find']({'where':{'id':_0x114e47[_0xc3e0('0xc6')]['id']}})[_0xc3e0('0x1a')](handleEntityNotFound(_0x3f9526,null))['then'](function(_0x5092d5){if(_0x5092d5){return _0x5092d5[_0xc3e0('0xd7')](_0x114e47[_0xc3e0('0xc5')]['ids'],_[_0xc3e0('0xca')](_0x114e47['body'],['ids','id'])||{})[_0xc3e0('0xd8')](function(){return db[_0xc3e0('0x6a')][_0xc3e0('0xd2')]({'attributes':['id',_0xc3e0('0x1e'),_0xc3e0('0x45')],'where':{'id':_0x114e47[_0xc3e0('0xc5')][_0xc3e0('0xc9')]}});})[_0xc3e0('0x1a')](function(_0x14a1f6){socket[_0xc3e0('0xd9')](_0xc3e0('0xda'),{'id':Number(_0x114e47[_0xc3e0('0xc6')]['id']),'tags':_0x14a1f6||[]});return{'id':Number(_0x114e47[_0xc3e0('0xc6')]['id']),'tags':_0x14a1f6||[]};});}})[_0xc3e0('0x1a')](respondWithResult(_0x3f9526,null))[_0xc3e0('0xbf')](handleError(_0x3f9526,null));};exports[_0xc3e0('0xdb')]=function(_0x10117,_0x1a2051){return db['MailInteraction'][_0xc3e0('0x5c')]({'where':{'id':_0x10117[_0xc3e0('0xc6')]['id']}})[_0xc3e0('0x1a')](handleEntityNotFound(_0x1a2051,null))[_0xc3e0('0x1a')](function(_0x1f73ea){if(_0x1f73ea){return _0x1f73ea[_0xc3e0('0xdb')](_0x10117[_0xc3e0('0x38')][_0xc3e0('0xc9')]);}})[_0xc3e0('0x1a')](respondWithStatusCode(_0x1a2051,null))['catch'](handleError(_0x1a2051,null));};exports[_0xc3e0('0xdc')]=function(_0x2ceb61,_0x46f2c0){var _0x23bd6b=moment()[_0xc3e0('0xdd')]()['toString']();var _0x3ceca1=path[_0xc3e0('0xde')](config['root'],_0xc3e0('0xdf'),'files','tmp');var _0xe1193d=path[_0xc3e0('0xde')](config[_0xc3e0('0xe0')],_0xc3e0('0xdf'),'files',_0xc3e0('0xe1'));var _0x2476f9=path[_0xc3e0('0xde')](_0x3ceca1,_0x23bd6b);var _0x29c1b9=util[_0xc3e0('0xcf')](_0xc3e0('0xe2'),_0x2ceb61[_0xc3e0('0xc6')]['id'],_0x23bd6b);var _0x5b3433=path[_0xc3e0('0xde')](_0x3ceca1,_0x29c1b9);var _0x3fac73=[];if(_0x2ceb61[_0xc3e0('0x38')][_0xc3e0('0xe1')]){_0x3fac73[_0xc3e0('0x26')]({'model':db[_0xc3e0('0xe3')],'as':_0xc3e0('0xe4'),'raw':!![]});}var _0x107679=[{'model':db['MailMessage'],'as':_0xc3e0('0xe5'),'attributes':['id',_0xc3e0('0xc5'),_0xc3e0('0x46'),'to','cc',_0xc3e0('0xe6'),_0xc3e0('0xe7'),_0xc3e0('0x73')],'where':{'secret':![]},'order':qs[_0xc3e0('0x41')]('id'),'include':_0x3fac73}];return db['MailInteraction'][_0xc3e0('0x5c')]({'where':{'id':_0x2ceb61[_0xc3e0('0xc6')]['id']},'include':_0x107679})['then'](handleEntityNotFound(_0x46f2c0,null))['then'](function(_0x56662e){if(_0x56662e&&_0x56662e['Messages']){var _0x589769=_0x56662e['get']({'plain':!![]});fs[_0xc3e0('0xe8')](_0x2476f9);return BPromise[_0xc3e0('0xe9')](_0x589769[_0xc3e0('0xe5')],function(_0x2bd4e5,_0x5e6f3c){var _0x468b5e={'from':_0x2bd4e5[_0xc3e0('0x46')],'to':_0x2bd4e5['to'],'subject':_0x2bd4e5['subject'],'html':htmlEntities[_0xc3e0('0xea')](_0x2bd4e5[_0xc3e0('0xc5')]),'headers':{'Date':moment(_0x2bd4e5[_0xc3e0('0x73')])['format'](_0xc3e0('0xeb'))},'attachments':[]};if(_0x2bd4e5['cc']){_0x468b5e[_0xc3e0('0xec')]['Cc']=_0x2bd4e5['cc'];}if(_0x2bd4e5[_0xc3e0('0xe6')]){_0x468b5e[_0xc3e0('0xec')][_0xc3e0('0xed')]=_0x2bd4e5[_0xc3e0('0xe6')];}return new BPromise(function(_0xb9d47e,_0x731372){if(_0x2bd4e5['Attachments']){for(var _0x4e768b=0x0;_0x4e768b<_0x2bd4e5[_0xc3e0('0xe4')][_0xc3e0('0x3e')];_0x4e768b++){var _0x16be7e=_0x2bd4e5['Attachments'][_0x4e768b];var _0x259037=path[_0xc3e0('0xde')](_0xe1193d,_0x16be7e[_0xc3e0('0xee')]);if(fs[_0xc3e0('0xef')](_0x259037)){_0x468b5e[_0xc3e0('0xe1')][_0xc3e0('0x26')]({'name':_0x16be7e[_0xc3e0('0x1e')],'contentType':_0x16be7e[_0xc3e0('0x36')],'data':fs[_0xc3e0('0xf0')](_0x259037)});}}}emlformat[_0xc3e0('0xf1')](_0x468b5e,function(_0x56ca4d,_0x30cdbc){if(_0x56ca4d)return _0x731372(_0x56ca4d);fs['writeFileSync'](path[_0xc3e0('0xde')](_0x2476f9,util[_0xc3e0('0xcf')](_0xc3e0('0xf2'),_0x5e6f3c)),_0x30cdbc);return _0xb9d47e(_0x30cdbc);});});})[_0xc3e0('0x1a')](function(){return new BPromise(function(_0x1ca85c,_0x58fad9){zipdir(_0x2476f9,{'saveTo':_0x5b3433},function(_0x146e97,_0x5db7af){if(_0x146e97)return _0x58fad9(_0x146e97);return _0x1ca85c(_0x5db7af);});})[_0xc3e0('0x1a')](function(){return new BPromise(function(_0x235a75,_0x17e68f){rimraf(_0x2476f9,function(_0x14372a){if(_0x14372a)_0x17e68f(_0x14372a);return _0x235a75();});});})['then'](function(){return _0x46f2c0[_0xc3e0('0xdc')](_0x5b3433,_0x29c1b9,function(_0x19e444){if(!_0x19e444)fs[_0xc3e0('0xf3')](_0x5b3433);});});});}else{return _0x46f2c0[_0xc3e0('0x1c')](0xc8);}})[_0xc3e0('0xbf')](handleError(_0x46f2c0,null));};
\ No newline at end of file
+var _0x3007=['map','MailInteraction','fieldName','type','key','getOptions','findAll','mail','query','user','show','params','model','keys','filters','intersection','attributes','fields','includeAll','include','merge','options','find','catch','create','body','describe','addMessage','MailMessage','ids','getMessages','rawAttributes','length','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','inlineCss','rows','addTags','setTags','omit','spread','Tag','color','emit','mailInteractionTags:save','removeTags','download','unix','toString','join','server','files','root','attachments','transcript-%d-%s.zip','Attachments','Messages','from','bcc','subject','createdAt','each','missing.recipient@your.company.com','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','push','readFileSync','writeFileSync','message%d.eml','eml-format','zip-dir','bluebird','util','path','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','end','json','offset','undefined','count','limit','status','Content-Range','then','destroy','sendStatus','error','stack','name','index'];(function(_0x49bba8,_0x3a9f40){var _0x5dca5d=function(_0x526539){while(--_0x526539){_0x49bba8['push'](_0x49bba8['shift']());}};_0x5dca5d(++_0x3a9f40);}(_0x3007,0xc0));var _0x7300=function(_0x4898f0,_0x49fb26){_0x4898f0=_0x4898f0-0x0;var _0x58b576=_0x3007[_0x4898f0];return _0x58b576;};'use strict';var emlformat=require(_0x7300('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x7300('0x1'));var moment=require('moment');var BPromise=require(_0x7300('0x2'));var util=require(_0x7300('0x3'));var path=require(_0x7300('0x4'));var fs=require('fs');var _=require(_0x7300('0x5'));var juice=require(_0x7300('0x6'));var Redis=require(_0x7300('0x7'));var interaction=require('../../components/interaction/service');var qs=require(_0x7300('0x8'));var logger=require(_0x7300('0x9'))(_0x7300('0xa'));var config=require(_0x7300('0xb'));var db=require(_0x7300('0xc'))['db'];var htmlEntities=require(_0x7300('0xd'));config[_0x7300('0xe')]=_[_0x7300('0xf')](config[_0x7300('0xe')],{'host':_0x7300('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x7300('0xe')]));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x245430,_0x1092c9){_0x1092c9=_0x1092c9||0xcc;return function(_0x23bdc5){if(_0x23bdc5){return _0x245430['sendStatus'](_0x1092c9);}return _0x245430['status'](_0x1092c9)[_0x7300('0x11')]();};}function respondWithResult(_0x42afd3,_0x29d8c3){_0x29d8c3=_0x29d8c3||0xc8;return function(_0x51570f){if(_0x51570f){return _0x42afd3['status'](_0x29d8c3)[_0x7300('0x12')](_0x51570f);}};}function respondWithFilteredResult(_0x5e3bbe,_0x3c0c0b){return function(_0x146055){if(_0x146055){var _0x3457f8=typeof _0x3c0c0b[_0x7300('0x13')]===_0x7300('0x14')&&typeof _0x3c0c0b['limit']===_0x7300('0x14');var _0x4c7c4f=_0x146055[_0x7300('0x15')];var _0x2993d5=_0x3457f8?0x0:_0x3c0c0b['offset'];var _0x951503=_0x3457f8?_0x146055[_0x7300('0x15')]:_0x3c0c0b[_0x7300('0x13')]+_0x3c0c0b[_0x7300('0x16')];var _0x43c6b7;if(_0x951503>=_0x4c7c4f){_0x951503=_0x4c7c4f;_0x43c6b7=0xc8;}else{_0x43c6b7=0xce;}_0x5e3bbe[_0x7300('0x17')](_0x43c6b7);return _0x5e3bbe['set'](_0x7300('0x18'),_0x2993d5+'-'+_0x951503+'/'+_0x4c7c4f)[_0x7300('0x12')](_0x146055);}return null;};}function saveUpdates(_0x31719a){return function(_0xff3be0){if(_0xff3be0){return _0xff3be0['update'](_0x31719a)[_0x7300('0x19')](function(_0x47a767){return _0x47a767;});}return null;};}function removeEntity(_0x460283){return function(_0x2a8b41){if(_0x2a8b41){return _0x2a8b41[_0x7300('0x1a')]()['then'](function(){_0x460283[_0x7300('0x17')](0xcc)[_0x7300('0x11')]();});}};}function handleEntityNotFound(_0x5565f4){return function(_0x510d79){if(!_0x510d79){_0x5565f4[_0x7300('0x1b')](0x194);}return _0x510d79;};}function handleError(_0x3a0f8c,_0x3dbafd){_0x3dbafd=_0x3dbafd||0x1f4;return function(_0x165ecb){logger[_0x7300('0x1c')](_0x165ecb[_0x7300('0x1d')]);if(_0x165ecb[_0x7300('0x1e')]){delete _0x165ecb['name'];}_0x3a0f8c[_0x7300('0x17')](_0x3dbafd)['send'](_0x165ecb);};}exports[_0x7300('0x1f')]=function(_0x131842,_0x1716c2){var _0x202dde={};var _0x527369=_[_0x7300('0x20')](db[_0x7300('0x21')]['rawAttributes'],function(_0x356f2a){return{'name':_0x356f2a[_0x7300('0x22')],'type':_0x356f2a[_0x7300('0x23')][_0x7300('0x24')]};});_0x202dde=qs[_0x7300('0x25')](_0x527369,_0x131842);return interaction[_0x7300('0x26')](_0x7300('0x27'),_0x131842[_0x7300('0x28')],_0x131842[_0x7300('0x29')],_0x202dde,_0x527369)[_0x7300('0x19')](respondWithFilteredResult(_0x1716c2,_0x202dde))['catch'](handleError(_0x1716c2,null));};exports[_0x7300('0x2a')]=function(_0x2ae0c1,_0x379a00){var _0x50f520={'raw':![],'where':{'id':_0x2ae0c1[_0x7300('0x2b')]['id']}},_0x4eec17={};_0x4eec17[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x21')]['rawAttributes']);_0x4eec17['query']=_[_0x7300('0x2d')](_0x2ae0c1[_0x7300('0x28')]);_0x4eec17[_0x7300('0x2e')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],_0x4eec17[_0x7300('0x28')]);_0x50f520[_0x7300('0x30')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],qs['fields'](_0x2ae0c1['query'][_0x7300('0x31')]));_0x50f520[_0x7300('0x30')]=_0x50f520['attributes']['length']?_0x50f520[_0x7300('0x30')]:_0x4eec17[_0x7300('0x2c')];if(_0x2ae0c1['query'][_0x7300('0x32')]){_0x50f520[_0x7300('0x33')]=[{'all':!![]}];}_0x50f520=_[_0x7300('0x34')]({},_0x50f520,_0x2ae0c1[_0x7300('0x35')]);return db[_0x7300('0x21')][_0x7300('0x36')](_0x50f520)[_0x7300('0x19')](handleEntityNotFound(_0x379a00,null))[_0x7300('0x19')](respondWithResult(_0x379a00,null))[_0x7300('0x37')](handleError(_0x379a00,null));};exports[_0x7300('0x38')]=function(_0xad3793,_0x4ead96){return db['MailInteraction'][_0x7300('0x38')](_0xad3793[_0x7300('0x39')],{})[_0x7300('0x19')](respondWithResult(_0x4ead96,0xc9))['catch'](handleError(_0x4ead96,null));};exports['update']=function(_0x378352,_0x287fef){if(_0x378352[_0x7300('0x39')]['id']){delete _0x378352[_0x7300('0x39')]['id'];}return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x378352[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x287fef,null))[_0x7300('0x19')](saveUpdates(_0x378352[_0x7300('0x39')],null))[_0x7300('0x19')](respondWithResult(_0x287fef,null))[_0x7300('0x37')](handleError(_0x287fef,null));};exports[_0x7300('0x1a')]=function(_0x235606,_0x5814c7){return db['MailInteraction']['find']({'where':{'id':_0x235606[_0x7300('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5814c7,null))[_0x7300('0x19')](removeEntity(_0x5814c7,null))['catch'](handleError(_0x5814c7,null));};exports[_0x7300('0x3a')]=function(_0x239733,_0x41cab6){return db['MailInteraction'][_0x7300('0x3a')]()[_0x7300('0x19')](respondWithResult(_0x41cab6,null))[_0x7300('0x37')](handleError(_0x41cab6,null));};exports[_0x7300('0x3b')]=function(_0x40a978,_0x4dca77){return db[_0x7300('0x3c')]['find']({'where':{'id':_0x40a978['params']['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x4dca77,null))[_0x7300('0x19')](function(_0x49d29c){if(_0x49d29c){return _0x49d29c['addMessage'](_0x40a978[_0x7300('0x39')][_0x7300('0x3d')],_['omit'](_0x40a978[_0x7300('0x39')],['ids','id'])||{});}})[_0x7300('0x19')](respondWithResult(_0x4dca77,null))[_0x7300('0x37')](handleError(_0x4dca77,null));};exports[_0x7300('0x3e')]=function(_0x13978a,_0x2cdce8){var _0x9c86ae={'raw':![],'where':{}};var _0x3caa05={};var _0x2ee94a={'count':0x0,'rows':[]};return db['MailInteraction']['findOne']({'where':{'id':_0x13978a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x2cdce8,null))[_0x7300('0x19')](function(_0x1838ac){if(_0x1838ac){_0x3caa05[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x3c')][_0x7300('0x3f')]);_0x3caa05[_0x7300('0x28')]=_[_0x7300('0x2d')](_0x13978a[_0x7300('0x28')]);_0x3caa05['filters']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],_0x3caa05[_0x7300('0x28')]);_0x9c86ae['attributes']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],qs[_0x7300('0x31')](_0x13978a[_0x7300('0x28')][_0x7300('0x31')]));_0x9c86ae[_0x7300('0x30')]=_0x9c86ae[_0x7300('0x30')][_0x7300('0x40')]?_0x9c86ae[_0x7300('0x30')]:_0x3caa05[_0x7300('0x2c')];if(!_0x13978a[_0x7300('0x28')]['hasOwnProperty'](_0x7300('0x41'))){_0x9c86ae[_0x7300('0x16')]=qs['limit'](_0x13978a[_0x7300('0x28')][_0x7300('0x16')]);_0x9c86ae[_0x7300('0x13')]=qs[_0x7300('0x13')](_0x13978a[_0x7300('0x28')][_0x7300('0x13')]);}_0x9c86ae[_0x7300('0x42')]=qs['sort'](_0x13978a[_0x7300('0x28')][_0x7300('0x43')]);_0x9c86ae[_0x7300('0x44')]=qs[_0x7300('0x2e')](_[_0x7300('0x45')](_0x13978a[_0x7300('0x28')],_0x3caa05[_0x7300('0x2e')]));_0x9c86ae[_0x7300('0x44')][_0x7300('0x46')]=_0x1838ac['id'];if(_0x13978a[_0x7300('0x28')][_0x7300('0x47')]){_0x9c86ae[_0x7300('0x44')]=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],{'$or':_[_0x7300('0x20')](_0x9c86ae[_0x7300('0x30')],function(_0x53dad7){var _0x4ea656={};_0x4ea656[_0x53dad7]={'$like':'%'+_0x13978a['query'][_0x7300('0x47')]+'%'};return _0x4ea656;})});}if(_0x13978a[_0x7300('0x28')][_0x7300('0x48')]){var _0x3fdac6=_0x13978a[_0x7300('0x28')][_0x7300('0x48')][_0x7300('0x49')](',');var _0x2c1043={};_0x2c1043[_0x3fdac6[0x0]]={'$gte':moment(_0x3fdac6[0x1])[_0x7300('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')};_0x9c86ae['where']=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],_0x2c1043);}_0x9c86ae=_['merge']({},_0x9c86ae,_0x13978a[_0x7300('0x35')]);return db[_0x7300('0x3c')][_0x7300('0x15')]({'where':_0x9c86ae[_0x7300('0x44')]})[_0x7300('0x19')](function(_0x49e8d2){_0x2ee94a[_0x7300('0x15')]=_0x49e8d2;if(_0x13978a[_0x7300('0x28')][_0x7300('0x32')]){_0x9c86ae[_0x7300('0x33')]=[{'all':!![]}];}return db[_0x7300('0x3c')][_0x7300('0x26')](_0x9c86ae);})[_0x7300('0x19')](function(_0x2314fc){if(_0x13978a['query'][_0x7300('0x4b')]==='true'){for(var _0x46234c=0x0;_0x46234c<_0x2314fc[_0x7300('0x40')];_0x46234c++){_0x2314fc[_0x46234c][_0x7300('0x39')]=juice(_0x2314fc[_0x46234c][_0x7300('0x39')]);}}_0x2ee94a[_0x7300('0x4c')]=_0x2314fc;return _0x2ee94a;});}})[_0x7300('0x19')](respondWithFilteredResult(_0x2cdce8,_0x9c86ae))[_0x7300('0x37')](handleError(_0x2cdce8,null));};exports[_0x7300('0x4d')]=function(_0x52a9f6,_0x32914a){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x52a9f6[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x32914a,null))[_0x7300('0x19')](function(_0x2faad5){if(_0x2faad5){return _0x2faad5[_0x7300('0x4e')](_0x52a9f6[_0x7300('0x39')]['ids'],_[_0x7300('0x4f')](_0x52a9f6[_0x7300('0x39')],[_0x7300('0x3d'),'id'])||{})[_0x7300('0x50')](function(){return db[_0x7300('0x51')]['findAll']({'attributes':['id',_0x7300('0x1e'),_0x7300('0x52')],'where':{'id':_0x52a9f6[_0x7300('0x39')][_0x7300('0x3d')]}});})[_0x7300('0x19')](function(_0x1f31e6){socket[_0x7300('0x53')](_0x7300('0x54'),{'id':Number(_0x52a9f6['params']['id']),'tags':_0x1f31e6||[]});return{'id':Number(_0x52a9f6[_0x7300('0x2b')]['id']),'tags':_0x1f31e6||[]};});}})[_0x7300('0x19')](respondWithResult(_0x32914a,null))[_0x7300('0x37')](handleError(_0x32914a,null));};exports[_0x7300('0x55')]=function(_0x28475a,_0x5729c9){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x28475a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x5729c9,null))[_0x7300('0x19')](function(_0x18d6f1){if(_0x18d6f1){return _0x18d6f1['removeTags'](_0x28475a[_0x7300('0x28')][_0x7300('0x3d')]);}})[_0x7300('0x19')](respondWithStatusCode(_0x5729c9,null))[_0x7300('0x37')](handleError(_0x5729c9,null));};exports[_0x7300('0x56')]=function(_0x447422,_0xb4bb32){var _0x5609b8=moment()[_0x7300('0x57')]()[_0x7300('0x58')]();var _0x2a8be9=path[_0x7300('0x59')](config['root'],_0x7300('0x5a'),_0x7300('0x5b'),'tmp');var _0x204196=path[_0x7300('0x59')](config[_0x7300('0x5c')],_0x7300('0x5a'),_0x7300('0x5b'),_0x7300('0x5d'));var _0x4caac4=path[_0x7300('0x59')](_0x2a8be9,_0x5609b8);var _0x57f708=util[_0x7300('0x4a')](_0x7300('0x5e'),_0x447422['params']['id'],_0x5609b8);var _0x2c9689=path[_0x7300('0x59')](_0x2a8be9,_0x57f708);var _0x358aee=[];if(_0x447422[_0x7300('0x28')][_0x7300('0x5d')]){_0x358aee['push']({'model':db['Attachment'],'as':_0x7300('0x5f'),'raw':!![]});}var _0x2ab44d=[{'model':db['MailMessage'],'as':_0x7300('0x60'),'attributes':['id','body',_0x7300('0x61'),'to','cc',_0x7300('0x62'),_0x7300('0x63'),_0x7300('0x64')],'where':{'secret':![]},'order':qs[_0x7300('0x43')]('id'),'include':_0x358aee}];return db[_0x7300('0x21')]['find']({'where':{'id':_0x447422[_0x7300('0x2b')]['id']},'include':_0x2ab44d})[_0x7300('0x19')](handleEntityNotFound(_0xb4bb32,null))[_0x7300('0x19')](function(_0x3c9d37){if(_0x3c9d37&&_0x3c9d37['Messages']){var _0xf74aec=_0x3c9d37['get']({'plain':!![]});fs['mkdirSync'](_0x4caac4);return BPromise[_0x7300('0x65')](_0xf74aec[_0x7300('0x60')],function(_0x24e6b4,_0x572b93){var _0x586fe2={'from':_0x24e6b4['from'],'to':_0x24e6b4['to']||_0x7300('0x66'),'subject':_0x24e6b4[_0x7300('0x63')],'html':htmlEntities[_0x7300('0x67')](_0x24e6b4['body']),'headers':{'Date':moment(_0x24e6b4[_0x7300('0x64')])[_0x7300('0x4a')](_0x7300('0x68'))},'attachments':[]};if(_0x24e6b4['cc']){_0x586fe2[_0x7300('0x69')]['Cc']=_0x24e6b4['cc'];}if(_0x24e6b4[_0x7300('0x62')]){_0x586fe2[_0x7300('0x69')]['Bcc']=_0x24e6b4[_0x7300('0x62')];}return new BPromise(function(_0x9feedf,_0x1701e5){if(_0x24e6b4[_0x7300('0x5f')]){for(var _0x29e5c1=0x0;_0x29e5c1<_0x24e6b4['Attachments']['length'];_0x29e5c1++){var _0x3043fd=_0x24e6b4[_0x7300('0x5f')][_0x29e5c1];var _0x1dadce=path[_0x7300('0x59')](_0x204196,_0x3043fd[_0x7300('0x6a')]);if(fs[_0x7300('0x6b')](_0x1dadce)){_0x586fe2['attachments'][_0x7300('0x6c')]({'name':_0x3043fd[_0x7300('0x1e')],'contentType':_0x3043fd['type'],'data':fs[_0x7300('0x6d')](_0x1dadce)});}}}emlformat['build'](_0x586fe2,function(_0x18712b,_0x3384ad){if(_0x18712b)return _0x1701e5(_0x18712b);fs[_0x7300('0x6e')](path[_0x7300('0x59')](_0x4caac4,util[_0x7300('0x4a')](_0x7300('0x6f'),_0x572b93)),_0x3384ad);return _0x9feedf(_0x3384ad);});});})[_0x7300('0x19')](function(){return new BPromise(function(_0x4d4bef,_0x5a7037){zipdir(_0x4caac4,{'saveTo':_0x2c9689},function(_0x39e988,_0x2a9fcb){if(_0x39e988)return _0x5a7037(_0x39e988);return _0x4d4bef(_0x2a9fcb);});})['then'](function(){return new BPromise(function(_0x51d74c,_0x3c2f86){rimraf(_0x4caac4,function(_0x54d1de){if(_0x54d1de)_0x3c2f86(_0x54d1de);return _0x51d74c();});});})[_0x7300('0x19')](function(){return _0xb4bb32[_0x7300('0x56')](_0x2c9689,_0x57f708,function(_0x1edfbc){if(!_0x1edfbc)fs['unlinkSync'](_0x2c9689);});});});}else{return _0xb4bb32['sendStatus'](0xc8);}})['catch'](handleError(_0xb4bb32,null));};
\ No newline at end of file