Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 40fc541..39da7a6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xc57e=['SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','t.id\x20IN\x20?','resolve','MailAccountId','i.MailAccountId\x20IS\x20NOT\x20NULL','role','agent','user','getMailAccounts','i.MailAccountId\x20IS\x20NULL','toString','keyBy','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','Account.email','i.createdAt','i.updatedAt','i.closed','i.closedAt','i.lastMsgAt','i.lastMsgDirection','i.subject','i.secondDisposition','i.thirdDisposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','c.phone','c.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.MailInteractionId\x20IN\x20?','groupBy','MailInteractionId','enableEmailPreview','all','rows','show','keys','includeAll','include','merge','options','create','body','params','describe','addMessage','ids','omit','getMessages','MailMessage','$gte','format','YYYY-MM-DD\x20HH:mm:ss','findAll','inlineCss','addTags','color','emit','mailInteractionTags:save','removeTags','download','unix','join','server','files','tmp','root','attachments','transcript-%d-%s.zip','push','Attachment','Attachments','Messages','bcc','get','mkdirSync','each','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','Bcc','basename','existsSync','build','writeFileSync','unlinkSync','eml-format','rimraf','zip-dir','bluebird','lodash','squel','juice','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/environment','html-entities','defaults','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','json','offset','undefined','limit','count','set','update','then','destroy','error','stack','name','Users','fullname','TagIds','split','forEach','Tags','findOne','-id','plainBody','trimStart','catch','talking','total','closed','UserId','waiting','answered','index','MailInteraction','rawAttributes','fieldName','type','model','map','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','field','select','u.fullname','ui.MailInteractionId','user_has_mail_interactions','left_join','users','from','mail_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','a.id\x20=\x20i.MailAccountId','mail_messages','mail_interaction_has_tags','it.MailInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','search','parseSearch','conditions','find','unreadMessages','value','having','`\x20=\x200','operator','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','start','end','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','$substring','compact','isEmpty','i.MailAccountId\x20IN\x20?','createdAt','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','QueryTypes'];(function(_0x48dd05,_0x57f47f){var _0x15a83f=function(_0x48c439){while(--_0x48c439){_0x48dd05['push'](_0x48dd05['shift']());}};_0x15a83f(++_0x57f47f);}(_0xc57e,0x66));var _0xec57=function(_0xa464c9,_0x7c86d8){_0xa464c9=_0xa464c9-0x0;var _0x3d73c4=_0xc57e[_0xa464c9];return _0x3d73c4;};'use strict';var emlformat=require(_0xec57('0x0'));var rimraf=require(_0xec57('0x1'));var zipdir=require(_0xec57('0x2'));var moment=require('moment');var BPromise=require(_0xec57('0x3'));var util=require('util');var path=require('path');var fs=require('fs');var _=require(_0xec57('0x4'));var squel=require(_0xec57('0x5'));var juice=require(_0xec57('0x6'));var Redis=require('ioredis');var qs=require(_0xec57('0x7'));var as=require(_0xec57('0x8'));var logger=require(_0xec57('0x9'))('api');var config=require(_0xec57('0xa'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0xec57('0xb'));config['redis']=_[_0xec57('0xc')](config[_0xec57('0xd')],{'host':_0xec57('0xe'),'port':0x18eb});var socket=require(_0xec57('0xf'))(new Redis(config[_0xec57('0xd')]));require(_0xec57('0x10'))[_0xec57('0x11')](socket);function respondWithStatusCode(_0x24e3bf,_0x60235d){_0x60235d=_0x60235d||0xcc;return function(_0x567a12){if(_0x567a12){return _0x24e3bf[_0xec57('0x12')](_0x60235d);}return _0x24e3bf[_0xec57('0x13')](_0x60235d)['end']();};}function respondWithResult(_0x475ef1,_0x8e1f90){_0x8e1f90=_0x8e1f90||0xc8;return function(_0x50fa36){if(_0x50fa36){return _0x475ef1['status'](_0x8e1f90)[_0xec57('0x14')](_0x50fa36);}};}function respondWithFilteredResult(_0x46abfa,_0x204c9f){return function(_0x2ca7b1){if(_0x2ca7b1){var _0x39cf50=typeof _0x204c9f[_0xec57('0x15')]===_0xec57('0x16')&&typeof _0x204c9f[_0xec57('0x17')]===_0xec57('0x16');var _0x1491f1=_0x2ca7b1[_0xec57('0x18')];var _0x562c6c=_0x39cf50?0x0:_0x204c9f[_0xec57('0x15')];var _0x4c6f48=_0x39cf50?_0x2ca7b1[_0xec57('0x18')]:_0x204c9f[_0xec57('0x15')]+_0x204c9f[_0xec57('0x17')];var _0xb4135e;if(_0x4c6f48>=_0x1491f1){_0x4c6f48=_0x1491f1;_0xb4135e=0xc8;}else{_0xb4135e=0xce;}_0x46abfa[_0xec57('0x13')](_0xb4135e);return _0x46abfa[_0xec57('0x19')]('Content-Range',_0x562c6c+'-'+_0x4c6f48+'/'+_0x1491f1)[_0xec57('0x14')](_0x2ca7b1);}return null;};}function saveUpdates(_0x5e52c0){return function(_0x5743eb){if(_0x5743eb){return _0x5743eb[_0xec57('0x1a')](_0x5e52c0)[_0xec57('0x1b')](function(_0x1627bc){return _0x1627bc;});}return null;};}function removeEntity(_0x3d3afa){return function(_0x3b823a){if(_0x3b823a){return _0x3b823a[_0xec57('0x1c')]()['then'](function(){_0x3d3afa[_0xec57('0x13')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2c445d){return function(_0x112573){if(!_0x112573){_0x2c445d[_0xec57('0x12')](0x194);}return _0x112573;};}function handleError(_0x1e6696,_0x7bdcad){_0x7bdcad=_0x7bdcad||0x1f4;return function(_0x4dfca1){logger[_0xec57('0x1d')](_0x4dfca1[_0xec57('0x1e')]);if(_0x4dfca1['name']){delete _0x4dfca1[_0xec57('0x1f')];}_0x1e6696[_0xec57('0x13')](_0x7bdcad)['send'](_0x4dfca1);};}function getInteractionUsers(_0x34e2e1,_0x227992){return new BPromise(function(_0x35f279,_0x5d177b){try{if(_0x227992[_0x34e2e1['id']]){_0x34e2e1[_0xec57('0x20')]=_['map'](_0x227992[_0x34e2e1['id']],function(_0xb955f4){return{'id':_0xb955f4['id'],'fullname':_0xb955f4[_0xec57('0x21')]};});}}catch(_0x65543b){_0x5d177b(_0x65543b);}_0x35f279(_0x34e2e1);});}function getInteractionTags(_0x414445,_0x443a49){return new BPromise(function(_0x259d10,_0x12678e){try{if(_0x414445[_0xec57('0x22')]){_0x414445['Tags']=[];_0x414445['TagIds'][_0xec57('0x23')](',')[_0xec57('0x24')](function(_0x534696){_0x414445[_0xec57('0x25')]['push'](_0x443a49[_0x534696]);});}delete _0x414445[_0xec57('0x22')];}catch(_0x58cc89){_0x12678e(_0x58cc89);}_0x259d10(_0x414445);});}function getLastMessageText(_0x37f4bf){return new BPromise(function(_0x539b59,_0x57f2f3){return db['MailMessage'][_0xec57('0x26')]({'where':{'$and':[{'MailInteractionId':_0x37f4bf['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':'out'},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':['plainBody'],'order':_0xec57('0x27'),'raw':!![]})[_0xec57('0x1b')](function(_0x1c8a62){if(_0x1c8a62&&_0x1c8a62[_0xec57('0x28')]){_0x37f4bf['lastMsgText']=_[_0xec57('0x29')](_0x1c8a62['plainBody']);}_0x539b59(_0x37f4bf);})[_0xec57('0x2a')](function(_0x3802b8){_0x57f2f3(_0x3802b8);});});}function updateMailInteraction(_0x42924c,_0x26e05d,_0x4d09e5,_0x40fd28){return new BPromise(function(_0x471574,_0x4884f7){return getInteractionUsers(_0x42924c,_0x4d09e5)[_0xec57('0x1b')](function(_0x5f80b){return getInteractionTags(_0x5f80b,_0x26e05d);})['then'](function(_0x29df7f){return getStateInteraction(_0x29df7f);})[_0xec57('0x1b')](function(_0x39daf1){if(_0x40fd28){_0x471574(getLastMessageText(_0x39daf1));}else{_0x471574(_0x39daf1);}})[_0xec57('0x2a')](function(_0xb9ef8){_0x4884f7(_0xb9ef8);});});}function getStateInteraction(_0x297341){return new BPromise(function(_0x43d883){_0x297341['waiting']=0x0;_0x297341[_0xec57('0x2b')]=0x0;_0x297341['answered']=0x0;_0x297341['unmanaged']=0x0;_0x297341[_0xec57('0x2c')]=0x0;if(!_0x297341[_0xec57('0x2d')]&&!_0x297341[_0xec57('0x2e')]){_0x297341['waiting']+=0x1;}if(!_0x297341[_0xec57('0x2d')]&&_0x297341['UserId']){_0x297341['talking']+=0x1;if(_0x297341[_0xec57('0x2f')]){_0x297341[_0xec57('0x2f')]-=0x1;}}if(_0x297341['closed']&&_0x297341['UserId']){_0x297341[_0xec57('0x30')]+=0x1;if(_0x297341[_0xec57('0x2b')]){_0x297341['talking']-=0x1;}}if(_0x297341[_0xec57('0x2d')]&&!_0x297341['UserId']){_0x297341['unmanaged']+=0x1;if(_0x297341[_0xec57('0x2f')]){_0x297341[_0xec57('0x2f')]-=0x1;}}_0x297341[_0xec57('0x2c')]+=0x1;_0x43d883(_0x297341);});}exports[_0xec57('0x31')]=function(_0x39ee1d,_0x2ff5d8){var _0x575151={},_0x31da16={},_0x488c75={'count':0x0,'rows':[]};var _0x303ce9=_['map'](db[_0xec57('0x32')][_0xec57('0x33')],function(_0x3f175b){return{'name':_0x3f175b[_0xec57('0x34')],'type':_0x3f175b[_0xec57('0x35')]['key']};});_0x31da16[_0xec57('0x36')]=_[_0xec57('0x37')](_0x303ce9,'name');_0x31da16[_0xec57('0x38')]=_['keys'](_0x39ee1d[_0xec57('0x38')]);_0x31da16[_0xec57('0x39')]=_[_0xec57('0x3a')](_0x31da16['model'],_0x31da16[_0xec57('0x38')]);_0x575151[_0xec57('0x3b')]=_[_0xec57('0x3a')](_0x31da16[_0xec57('0x36')],qs[_0xec57('0x3c')](_0x39ee1d[_0xec57('0x38')][_0xec57('0x3c')]));_0x575151[_0xec57('0x3b')]=_0x575151[_0xec57('0x3b')][_0xec57('0x3d')]?_0x575151['attributes']:_0x31da16[_0xec57('0x36')];if(!_0x39ee1d[_0xec57('0x38')][_0xec57('0x3e')](_0xec57('0x3f'))){_0x575151['limit']=qs['limit'](_0x39ee1d[_0xec57('0x38')][_0xec57('0x17')]);_0x575151[_0xec57('0x15')]=qs['offset'](_0x39ee1d[_0xec57('0x38')][_0xec57('0x15')]);}_0x575151[_0xec57('0x40')]=qs[_0xec57('0x41')](_0x39ee1d[_0xec57('0x38')][_0xec57('0x41')]);_0x575151[_0xec57('0x42')]=qs[_0xec57('0x39')](_[_0xec57('0x43')](_0x39ee1d[_0xec57('0x38')],_0x31da16[_0xec57('0x39')]),_0x303ce9);var _0x9b5a17=[];var _0x5cd57b=squel['select']()[_0xec57('0x44')]('id')[_0xec57('0x44')](_0xec57('0x1f'))[_0xec57('0x44')]('color')['from']('tools_tags');var _0x48bcac=squel[_0xec57('0x45')]()[_0xec57('0x44')]('u.id')[_0xec57('0x44')](_0xec57('0x46'))['field'](_0xec57('0x47'))['from'](_0xec57('0x48'),'ui')[_0xec57('0x49')](_0xec57('0x4a'),'u','u.id\x20=\x20ui.UserId');var _0x236bc4=squel[_0xec57('0x45')]()[_0xec57('0x4b')](_0xec57('0x4c'),'i')[_0xec57('0x49')](_0xec57('0x4d'),'c',_0xec57('0x4e'))['left_join']('users','o','o.id\x20=\x20i.UserId')[_0xec57('0x49')]('mail_accounts','a',_0xec57('0x4f'))['left_join'](_0xec57('0x50'),'me','me.MailInteractionId\x20=\x20i.id')[_0xec57('0x49')](_0xec57('0x51'),'it',_0xec57('0x52'))[_0xec57('0x49')](_0xec57('0x53'),'t',_0xec57('0x54'));var _0x363bb1=squel['expr']();var _0x4348c5=[];var _0x5d0a30=squel[_0xec57('0x55')]();var _0xd98cb8;if(_0x39ee1d[_0xec57('0x38')][_0xec57('0x56')]){_0xd98cb8=as[_0xec57('0x57')](_0x39ee1d['query'][_0xec57('0x56')]);var _0x450409=_0xd98cb8['sqlOperator'];for(var _0x4d81e1=0x0;_0x4d81e1<_0xd98cb8[_0xec57('0x58')][_0xec57('0x3d')];_0x4d81e1++){var _0x32beae=_0xd98cb8['conditions'][_0x4d81e1];var _0x49a6ce='i';var _0x4b3fdb=_[_0xec57('0x59')](_0x303ce9,['name',_0x32beae[_0xec57('0x44')]]);if(!_0x4b3fdb){switch(_0x32beae[_0xec57('0x44')]){case _0xec57('0x5a'):if(_0x32beae[_0xec57('0x5b')]==0x1){_0x236bc4[_0xec57('0x5c')]('`'+_0x32beae['field']+_0xec57('0x5d'));}else{_0x236bc4[_0xec57('0x5c')]('`'+_0x32beae[_0xec57('0x44')]+'`\x20>\x200');}break;case'Contact':if(_0x32beae[_0xec57('0x5e')]==='$substring'){if(_0x32beae[_0xec57('0x5b')][_0xec57('0x23')]('\x20')[_0xec57('0x3d')]>0x1){_0x363bb1[_0x450409]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xec57('0x5f')](_0x32beae[_0xec57('0x5b')]),null);}else{var _0x42dbc6='%'+_0x32beae['value']+'%';_0x363bb1[_0x450409](_0xec57('0x60'),_0x42dbc6,_0x42dbc6,_0x42dbc6);}}else{_0x4b3fdb=_['find'](_0x303ce9,['name','ContactId']);_0x32beae[_0xec57('0x44')]=_0xec57('0x61');_0x3ef203=as[_0xec57('0x62')](_0x49a6ce,_0x4b3fdb[_0xec57('0x35')],_0x32beae);_0x363bb1[_0x450409](_0x3ef203[_0xec57('0x63')],_0x3ef203[_0xec57('0x5b')][_0xec57('0x64')],_0x3ef203['value'][_0xec57('0x65')]);}break;case _0xec57('0x66'):var _0x10b4af=_0x32beae['value']['split'](',')[_0xec57('0x37')](function(_0x4864ba){return Number(_0x4864ba);});_0x10b4af[_0xec57('0x24')](function(_0x50cf11){_0x5d0a30['or'](_0xec57('0x67'),'%,'+_0x50cf11+',%');});_0x4348c5=_[_0xec57('0x68')](_0x4348c5,_0x10b4af);break;case _0xec57('0x69'):if(_0x32beae['operator']===_0xec57('0x6a')){_0x363bb1[_0x450409]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x32beae[_0xec57('0x5b')]+'%',null);}else{_0x4b3fdb=_['find'](_0x303ce9,[_0xec57('0x1f'),'UserId']);_0x32beae[_0xec57('0x44')]='UserId';_0x3ef203=as[_0xec57('0x62')](_0x49a6ce,_0x4b3fdb[_0xec57('0x35')],_0x32beae);_0x363bb1[_0x450409](_0x3ef203['text'],_0x3ef203[_0xec57('0x5b')]['start'],_0x3ef203[_0xec57('0x5b')]['end']);}break;case'plainBody':_0x3ef203=as[_0xec57('0x62')]('me',null,_0x32beae);_0x363bb1[_0x450409](_0x3ef203[_0xec57('0x63')],_0x3ef203[_0xec57('0x5b')][_0xec57('0x64')],_0x3ef203[_0xec57('0x5b')][_0xec57('0x65')]);break;}}else{var _0x3ef203=as[_0xec57('0x62')](_0x49a6ce,_0x4b3fdb[_0xec57('0x35')],_0x32beae);_0x363bb1[_0x450409](_0x3ef203[_0xec57('0x63')],_0x3ef203['value'][_0xec57('0x64')],_0x3ef203[_0xec57('0x5b')][_0xec57('0x65')]);}}}else{var _0x2ac0f2=_(_0x39ee1d['query'])['keys']()['map'](function(_0x21944e){return _['some'](_0x303ce9,[_0xec57('0x1f'),_0x21944e])?_0x21944e:undefined;})[_0xec57('0x6b')]()[_0xec57('0x5b')]();if(!_[_0xec57('0x6c')](_0x2ac0f2)){_0x2ac0f2[_0xec57('0x24')](function(_0x123608){if(_0x123608==='MailAccountId'){_0x236bc4['where'](_0xec57('0x6d'),[]['concat'](_0x39ee1d[_0xec57('0x38')][_0x123608]));}else if(_0x123608===_0xec57('0x6e')){var _0x4e1656=JSON[_0xec57('0x6f')](_0x39ee1d[_0xec57('0x38')][_0x123608])['$gte'];var _0x13801c=JSON[_0xec57('0x6f')](_0x39ee1d[_0xec57('0x38')][_0x123608])[_0xec57('0x70')];_0x236bc4[_0xec57('0x42')](_0xec57('0x71'),_0x4e1656,_0x13801c);}else{if(_0x39ee1d[_0xec57('0x38')][_0x123608]===_0xec57('0x72')){_0x236bc4[_0xec57('0x42')]('i.'+_0x123608+_0xec57('0x73'));}else{_0x236bc4['where']('i.'+_0x123608+_0xec57('0x74'),_0x39ee1d['query'][_0x123608]);}}});}if(_0x39ee1d['query'][_0xec57('0x75')]){if(_0x39ee1d[_0xec57('0x38')][_0xec57('0x75')]==0x1){_0x236bc4[_0xec57('0x5c')](_0xec57('0x76'));}else{_0x236bc4[_0xec57('0x5c')](_0xec57('0x77'));}}if(_0x39ee1d['query'][_0xec57('0x78')]){_0x4348c5=_[_0xec57('0x79')](_0x39ee1d[_0xec57('0x38')][_0xec57('0x78')])?_0x39ee1d[_0xec57('0x38')][_0xec57('0x78')]:new Array(_0x39ee1d[_0xec57('0x38')][_0xec57('0x78')]);_0x4348c5[_0xec57('0x24')](function(_0xa6ee07){_0x5d0a30['or'](_0xec57('0x67'),'%,'+_0xa6ee07+',%');});}if(_0x39ee1d[_0xec57('0x38')][_0xec57('0x7a')]){var _0xcc292b=_0x39ee1d[_0xec57('0x38')][_0xec57('0x7a')][_0xec57('0x7b')]('\x5c','\x5c\x5c')[_0xec57('0x7b')](/'/g,'\x27\x27');if(qs[_0xec57('0x7c')](_0xcc292b)){_0x363bb1['or'](_0xec57('0x7d'),_0xcc292b+'%');}else if(qs[_0xec57('0x7e')](_0xcc292b)){_0x363bb1['or'](_0xec57('0x7f'),_0xcc292b+'%');}else{_0x363bb1['or'](_0xec57('0x80'),qs[_0xec57('0x5f')](_0xcc292b))['or']('MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xec57('0x5f')](_0xcc292b));}}}_0x236bc4['where'](_0x363bb1);_0x236bc4[_0xec57('0x81')](_0xec57('0x82'));var _0x49c1f1={'type':db['Sequelize'][_0xec57('0x83')][_0xec57('0x84')],'raw':!![]};var _0x5d2159=_0x236bc4[_0xec57('0x85')]();_0x5d2159['field']('i.id');_0x5d2159['field'](_0xec57('0x86'),_0xec57('0x5a'));if(_0x575151[_0xec57('0x40')]){_0x575151[_0xec57('0x40')][_0xec57('0x24')](function(_0x305321){var _0x4428c9=_0x305321[0x0]===_0xec57('0x87')?_0x305321[0x0]:'i.'+_0x305321[0x0];_0x236bc4[_0xec57('0x40')](_0x4428c9,_0x305321[0x1]==='DESC'?![]:!![]);});}if(!_[_0xec57('0x6c')](_0x4348c5)){_0x236bc4[_0xec57('0x5c')](_0x5d0a30);_0x5d2159[_0xec57('0x42')](_0xec57('0x88'),_0x4348c5);}BPromise[_0xec57('0x89')]()[_0xec57('0x1b')](function(){if(!_0xd98cb8){if(_0x39ee1d[_0xec57('0x38')][_0xec57('0x8a')])return;_0x5d2159['where'](_0xec57('0x8b'));_0x236bc4['where'](_0xec57('0x8b'));return;}if(_0x39ee1d['user'][_0xec57('0x8c')]!==_0xec57('0x8d'))return;return _0x39ee1d[_0xec57('0x8e')][_0xec57('0x8f')]({'attributes':['id'],'raw':!![]})[_0xec57('0x1b')](function(_0x57586f){if(_[_0xec57('0x6c')](_0x57586f)){_0x5d2159[_0xec57('0x42')](_0xec57('0x90'));_0x236bc4[_0xec57('0x42')](_0xec57('0x90'));}else{_0x5d2159['where'](_0xec57('0x6d'),_['map'](_0x57586f,'id'));_0x236bc4[_0xec57('0x42')]('i.MailAccountId\x20IN\x20?',_[_0xec57('0x37')](_0x57586f,'id'));}});})['then'](function(){if(_0x39ee1d[_0xec57('0x8e')][_0xec57('0x8c')]===_0xec57('0x8d')&&!_0xd98cb8&&!_0x39ee1d['query'][_0xec57('0x8a')])return[];return db['sequelize']['query'](_0x5d2159[_0xec57('0x91')](),_0x49c1f1);})[_0xec57('0x1b')](function(_0x28205d){_0x488c75[_0xec57('0x18')]=_0x28205d['length'];if(_0x488c75[_0xec57('0x18')]===0x0)return[];return db['sequelize'][_0xec57('0x38')](_0x5cd57b[_0xec57('0x91')](),_0x49c1f1)[_0xec57('0x1b')](function(_0x10aa49){_0x9b5a17=_[_0xec57('0x92')](_0x10aa49,'id');_0x49c1f1=_['merge'](_0x49c1f1,{'model':db[_0xec57('0x32')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x39ee1d['query']['fields']){_0x575151[_0xec57('0x3b')][_0xec57('0x24')](function(_0x46e4c8){_0x236bc4['field']('i.'+_0x46e4c8);});}else{_0x236bc4[_0xec57('0x44')](_0xec57('0x86'),_0xec57('0x5a'));_0x236bc4['field'](_0xec57('0x93'),_0xec57('0x94'));_0x236bc4[_0xec57('0x44')](_0xec57('0x95'),_0xec57('0x96'));_0x236bc4[_0xec57('0x44')]('a.email',_0xec57('0x97'));_0x236bc4[_0xec57('0x44')]('CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20CONCAT(\x27%\x27,\x20a.email,\x20\x27%\x27)\x20THEN\x20TRIM(SUBSTRING_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',_0xec57('0x87'));_0x236bc4[_0xec57('0x44')](_0xec57('0x82'));_0x236bc4[_0xec57('0x44')](_0xec57('0x98'));_0x236bc4['field'](_0xec57('0x99'));_0x236bc4['field'](_0xec57('0x9a'));_0x236bc4[_0xec57('0x44')](_0xec57('0x9b'));_0x236bc4[_0xec57('0x44')]('i.attach');_0x236bc4[_0xec57('0x44')](_0xec57('0x9c'));_0x236bc4[_0xec57('0x44')](_0xec57('0x9d'));_0x236bc4[_0xec57('0x44')](_0xec57('0x9e'));_0x236bc4[_0xec57('0x44')]('i.disposition');_0x236bc4[_0xec57('0x44')](_0xec57('0x9f'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa0'));_0x236bc4['field'](_0xec57('0xa1'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa2'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa3'));_0x236bc4['field'](_0xec57('0xa4'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa5'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa6'),_0xec57('0xa7'));_0x236bc4[_0xec57('0x44')](_0xec57('0xa8'),_0xec57('0xa9'));_0x236bc4[_0xec57('0x44')](_0xec57('0xaa'),'Contact.email');_0x236bc4['field'](_0xec57('0xab'),'Contact.phone');_0x236bc4[_0xec57('0x44')]('c.mobile','Contact.mobile');_0x236bc4[_0xec57('0x44')](_0xec57('0xac'),'Contact.fax');_0x236bc4[_0xec57('0x44')](_0xec57('0xad'),_0xec57('0xae'));_0x236bc4[_0xec57('0x44')](_0xec57('0xaf'),'Owner.internal');_0x236bc4[_0xec57('0x44')](_0xec57('0xb0'),_0xec57('0x22'));}if(_0x575151['limit'])_0x236bc4[_0xec57('0x17')](_0x575151[_0xec57('0x17')]);if(_0x575151['offset'])_0x236bc4[_0xec57('0x15')](_0x575151['offset']);return db['sequelize']['query'](_0x236bc4[_0xec57('0x91')](),_0x49c1f1);})[_0xec57('0x1b')](function(_0x28125c){if(_0x28125c[_0xec57('0x3d')]>0x0)_0x48bcac[_0xec57('0x42')](_0xec57('0xb1'),_[_0xec57('0x37')](_0x28125c,'id'));return db['sequelize'][_0xec57('0x38')](_0x48bcac[_0xec57('0x91')](),_0x49c1f1)[_0xec57('0x1b')](function(_0x33f5aa){var _0x2fe7ec=_[_0xec57('0xb2')](_0x33f5aa,_0xec57('0xb3'));var _0x4b674d=[];return db['Setting'][_0xec57('0x26')]({'attributes':[_0xec57('0xb4')],'raw':!![]})[_0xec57('0x1b')](function(_0xa0137d){var _0x5d0f6d=_0xa0137d[_0xec57('0xb4')];_0x28125c[_0xec57('0x24')](function(_0x449628){_0x4b674d['push'](updateMailInteraction(_0x449628,_0x9b5a17,_0x2fe7ec,_0x5d0f6d));});return BPromise[_0xec57('0xb5')](_0x4b674d);});});});})[_0xec57('0x1b')](function(_0x1ae6af){_0x488c75[_0xec57('0xb6')]=_0x1ae6af;return _0x488c75;})[_0xec57('0x1b')](respondWithFilteredResult(_0x2ff5d8,_0x575151))[_0xec57('0x2a')](handleError(_0x2ff5d8,null));};exports[_0xec57('0xb7')]=function(_0x4a2e79,_0x5f2888){var _0x509464={'raw':![],'where':{'id':_0x4a2e79['params']['id']}},_0x2d8c08={};_0x2d8c08[_0xec57('0x36')]=_['keys'](db[_0xec57('0x32')][_0xec57('0x33')]);_0x2d8c08[_0xec57('0x38')]=_[_0xec57('0xb8')](_0x4a2e79[_0xec57('0x38')]);_0x2d8c08[_0xec57('0x39')]=_['intersection'](_0x2d8c08['model'],_0x2d8c08[_0xec57('0x38')]);_0x509464[_0xec57('0x3b')]=_[_0xec57('0x3a')](_0x2d8c08['model'],qs['fields'](_0x4a2e79[_0xec57('0x38')][_0xec57('0x3c')]));_0x509464[_0xec57('0x3b')]=_0x509464['attributes'][_0xec57('0x3d')]?_0x509464[_0xec57('0x3b')]:_0x2d8c08[_0xec57('0x36')];if(_0x4a2e79[_0xec57('0x38')][_0xec57('0xb9')]){_0x509464[_0xec57('0xba')]=[{'all':!![]}];}_0x509464=_[_0xec57('0xbb')]({},_0x509464,_0x4a2e79[_0xec57('0xbc')]);return db[_0xec57('0x32')][_0xec57('0x59')](_0x509464)['then'](handleEntityNotFound(_0x5f2888,null))[_0xec57('0x1b')](respondWithResult(_0x5f2888,null))[_0xec57('0x2a')](handleError(_0x5f2888,null));};exports[_0xec57('0xbd')]=function(_0xeff077,_0x312170){return db[_0xec57('0x32')][_0xec57('0xbd')](_0xeff077[_0xec57('0xbe')],{})['then'](respondWithResult(_0x312170,0xc9))['catch'](handleError(_0x312170,null));};exports[_0xec57('0x1a')]=function(_0x1a8bfe,_0x2fdbe5){if(_0x1a8bfe[_0xec57('0xbe')]['id']){delete _0x1a8bfe[_0xec57('0xbe')]['id'];}return db[_0xec57('0x32')]['find']({'where':{'id':_0x1a8bfe[_0xec57('0xbf')]['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0x2fdbe5,null))['then'](saveUpdates(_0x1a8bfe[_0xec57('0xbe')],null))[_0xec57('0x1b')](respondWithResult(_0x2fdbe5,null))[_0xec57('0x2a')](handleError(_0x2fdbe5,null));};exports[_0xec57('0x1c')]=function(_0x334887,_0xb71f24){return db['MailInteraction']['find']({'where':{'id':_0x334887['params']['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0xb71f24,null))[_0xec57('0x1b')](removeEntity(_0xb71f24,null))[_0xec57('0x2a')](handleError(_0xb71f24,null));};exports['describe']=function(_0x2f665e,_0x4fe237){return db[_0xec57('0x32')][_0xec57('0xc0')]()['then'](respondWithResult(_0x4fe237,null))[_0xec57('0x2a')](handleError(_0x4fe237,null));};exports[_0xec57('0xc1')]=function(_0x963eef,_0x2ef53a){return db['MailMessage']['find']({'where':{'id':_0x963eef[_0xec57('0xbf')]['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0x2ef53a,null))[_0xec57('0x1b')](function(_0x90b7dc){if(_0x90b7dc){return _0x90b7dc['addMessage'](_0x963eef[_0xec57('0xbe')][_0xec57('0xc2')],_[_0xec57('0xc3')](_0x963eef[_0xec57('0xbe')],['ids','id'])||{});}})[_0xec57('0x1b')](respondWithResult(_0x2ef53a,null))[_0xec57('0x2a')](handleError(_0x2ef53a,null));};exports[_0xec57('0xc4')]=function(_0x5420f5,_0x1d560e){var _0x490689={'raw':![],'where':{}};var _0x2ab448={};var _0x2a0345={'count':0x0,'rows':[]};return db[_0xec57('0x32')][_0xec57('0x26')]({'where':{'id':_0x5420f5['params']['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0x1d560e,null))['then'](function(_0x4f2caa){if(_0x4f2caa){_0x2ab448[_0xec57('0x36')]=_['keys'](db[_0xec57('0xc5')][_0xec57('0x33')]);_0x2ab448[_0xec57('0x38')]=_[_0xec57('0xb8')](_0x5420f5[_0xec57('0x38')]);_0x2ab448['filters']=_[_0xec57('0x3a')](_0x2ab448['model'],_0x2ab448[_0xec57('0x38')]);_0x490689[_0xec57('0x3b')]=_[_0xec57('0x3a')](_0x2ab448['model'],qs[_0xec57('0x3c')](_0x5420f5[_0xec57('0x38')]['fields']));_0x490689[_0xec57('0x3b')]=_0x490689[_0xec57('0x3b')][_0xec57('0x3d')]?_0x490689[_0xec57('0x3b')]:_0x2ab448[_0xec57('0x36')];if(!_0x5420f5['query'][_0xec57('0x3e')](_0xec57('0x3f'))){_0x490689['limit']=qs[_0xec57('0x17')](_0x5420f5[_0xec57('0x38')]['limit']);_0x490689[_0xec57('0x15')]=qs[_0xec57('0x15')](_0x5420f5[_0xec57('0x38')][_0xec57('0x15')]);}_0x490689['order']=qs['sort'](_0x5420f5[_0xec57('0x38')]['sort']);_0x490689[_0xec57('0x42')]=qs[_0xec57('0x39')](_[_0xec57('0x43')](_0x5420f5['query'],_0x2ab448[_0xec57('0x39')]));_0x490689[_0xec57('0x42')][_0xec57('0xb3')]=_0x4f2caa['id'];if(_0x5420f5[_0xec57('0x38')]['filter']){_0x490689['where']=_['merge'](_0x490689['where'],{'$or':_[_0xec57('0x37')](_0x490689[_0xec57('0x3b')],function(_0x2b71f5){var _0x5e4ce0={};_0x5e4ce0[_0x2b71f5]={'$like':'%'+_0x5420f5[_0xec57('0x38')][_0xec57('0x7a')]+'%'};return _0x5e4ce0;})});}if(_0x5420f5['query'][_0xec57('0xc6')]){var _0x57e8bd=_0x5420f5['query'][_0xec57('0xc6')][_0xec57('0x23')](',');var _0x135e18={};_0x135e18[_0x57e8bd[0x0]]={'$gte':moment(_0x57e8bd[0x1])[_0xec57('0xc7')](_0xec57('0xc8'))};_0x490689[_0xec57('0x42')]=_[_0xec57('0xbb')](_0x490689['where'],_0x135e18);}_0x490689=_[_0xec57('0xbb')]({},_0x490689,_0x5420f5['options']);return db[_0xec57('0xc5')][_0xec57('0x18')]({'where':_0x490689['where']})[_0xec57('0x1b')](function(_0x4e7024){_0x2a0345[_0xec57('0x18')]=_0x4e7024;if(_0x5420f5['query'][_0xec57('0xb9')]){_0x490689['include']=[{'all':!![]}];}return db['MailMessage'][_0xec57('0xc9')](_0x490689);})[_0xec57('0x1b')](function(_0x4af4db){if(_0x5420f5['query'][_0xec57('0xca')]==='true'){for(var _0x2dc2bd=0x0;_0x2dc2bd<_0x4af4db['length'];_0x2dc2bd++){_0x4af4db[_0x2dc2bd][_0xec57('0xbe')]=juice(_0x4af4db[_0x2dc2bd][_0xec57('0xbe')]);}}_0x2a0345[_0xec57('0xb6')]=_0x4af4db;return _0x2a0345;});}})[_0xec57('0x1b')](respondWithFilteredResult(_0x1d560e,_0x490689))[_0xec57('0x2a')](handleError(_0x1d560e,null));};exports[_0xec57('0xcb')]=function(_0x23801e,_0x44f6a6){return db[_0xec57('0x32')][_0xec57('0x59')]({'where':{'id':_0x23801e[_0xec57('0xbf')]['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0x44f6a6,null))['then'](function(_0x5d22ca){if(_0x5d22ca){return _0x5d22ca['setTags'](_0x23801e[_0xec57('0xbe')][_0xec57('0xc2')],_[_0xec57('0xc3')](_0x23801e[_0xec57('0xbe')],[_0xec57('0xc2'),'id'])||{})['spread'](function(){return db['Tag'][_0xec57('0xc9')]({'attributes':['id',_0xec57('0x1f'),_0xec57('0xcc')],'where':{'id':_0x23801e[_0xec57('0xbe')][_0xec57('0xc2')]}});})[_0xec57('0x1b')](function(_0x22263e){socket[_0xec57('0xcd')](_0xec57('0xce'),{'id':Number(_0x23801e[_0xec57('0xbf')]['id']),'tags':_0x22263e||[]});return{'id':Number(_0x23801e[_0xec57('0xbf')]['id']),'tags':_0x22263e||[]};});}})[_0xec57('0x1b')](respondWithResult(_0x44f6a6,null))['catch'](handleError(_0x44f6a6,null));};exports[_0xec57('0xcf')]=function(_0x95525a,_0x344d11){return db[_0xec57('0x32')][_0xec57('0x59')]({'where':{'id':_0x95525a[_0xec57('0xbf')]['id']}})[_0xec57('0x1b')](handleEntityNotFound(_0x344d11,null))[_0xec57('0x1b')](function(_0x21ff99){if(_0x21ff99){return _0x21ff99[_0xec57('0xcf')](_0x95525a[_0xec57('0x38')][_0xec57('0xc2')]);}})[_0xec57('0x1b')](respondWithStatusCode(_0x344d11,null))[_0xec57('0x2a')](handleError(_0x344d11,null));};exports[_0xec57('0xd0')]=function(_0x4b03ae,_0x2a6616){var _0x70deb7=moment()[_0xec57('0xd1')]()[_0xec57('0x91')]();var _0x413a02=path[_0xec57('0xd2')](config['root'],_0xec57('0xd3'),_0xec57('0xd4'),_0xec57('0xd5'));var _0x3ffaf2=path['join'](config[_0xec57('0xd6')],_0xec57('0xd3'),_0xec57('0xd4'),_0xec57('0xd7'));var _0x24975d=path[_0xec57('0xd2')](_0x413a02,_0x70deb7);var _0x129b2b=util[_0xec57('0xc7')](_0xec57('0xd8'),_0x4b03ae[_0xec57('0xbf')]['id'],_0x70deb7);var _0x19cf01=path[_0xec57('0xd2')](_0x413a02,_0x129b2b);var _0x531b9a=[];if(_0x4b03ae['query']['attachments']){_0x531b9a[_0xec57('0xd9')]({'model':db[_0xec57('0xda')],'as':_0xec57('0xdb'),'raw':!![]});}var _0x225c21=[{'model':db[_0xec57('0xc5')],'as':_0xec57('0xdc'),'attributes':['id',_0xec57('0xbe'),_0xec57('0x4b'),'to','cc',_0xec57('0xdd'),'subject','createdAt'],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x531b9a}];return db[_0xec57('0x32')][_0xec57('0x59')]({'where':{'id':_0x4b03ae[_0xec57('0xbf')]['id']},'include':_0x225c21})[_0xec57('0x1b')](handleEntityNotFound(_0x2a6616,null))['then'](function(_0x4abae1){if(_0x4abae1&&_0x4abae1[_0xec57('0xdc')]){var _0x4995b3=_0x4abae1[_0xec57('0xde')]({'plain':!![]});fs[_0xec57('0xdf')](_0x24975d);return BPromise[_0xec57('0xe0')](_0x4995b3[_0xec57('0xdc')],function(_0x381bed,_0x1fbb83){var _0x2fed35={'from':_0x381bed['from'],'to':_0x381bed['to'],'subject':_0x381bed[_0xec57('0xe1')],'html':htmlEntities[_0xec57('0xe2')](_0x381bed[_0xec57('0xbe')]),'headers':{'Date':moment(_0x381bed[_0xec57('0x6e')])['format'](_0xec57('0xe3'))},'attachments':[]};if(_0x381bed['cc']){_0x2fed35['headers']['Cc']=_0x381bed['cc'];}if(_0x381bed['bcc']){_0x2fed35['headers'][_0xec57('0xe4')]=_0x381bed[_0xec57('0xdd')];}return new BPromise(function(_0x34b249,_0x5b07bc){if(_0x381bed[_0xec57('0xdb')]){for(var _0x55091a=0x0;_0x55091a<_0x381bed['Attachments'][_0xec57('0x3d')];_0x55091a++){var _0x57e298=_0x381bed[_0xec57('0xdb')][_0x55091a];var _0x14170e=path['join'](_0x3ffaf2,_0x57e298[_0xec57('0xe5')]);if(fs[_0xec57('0xe6')](_0x14170e)){_0x2fed35['attachments'][_0xec57('0xd9')]({'name':_0x57e298[_0xec57('0x1f')],'contentType':_0x57e298[_0xec57('0x35')],'data':fs['readFileSync'](_0x14170e)});}}}emlformat[_0xec57('0xe7')](_0x2fed35,function(_0x5a1565,_0x30f52a){if(_0x5a1565)return _0x5b07bc(_0x5a1565);fs[_0xec57('0xe8')](path[_0xec57('0xd2')](_0x24975d,util[_0xec57('0xc7')]('message%d.eml',_0x1fbb83)),_0x30f52a);return _0x34b249(_0x30f52a);});});})[_0xec57('0x1b')](function(){return new BPromise(function(_0x2ed05b,_0xfbe763){zipdir(_0x24975d,{'saveTo':_0x19cf01},function(_0x3268bd,_0x1d772e){if(_0x3268bd)return _0xfbe763(_0x3268bd);return _0x2ed05b(_0x1d772e);});})[_0xec57('0x1b')](function(){return new BPromise(function(_0x88f6fb,_0x2d7c59){rimraf(_0x24975d,function(_0x768fa1){if(_0x768fa1)_0x2d7c59(_0x768fa1);return _0x88f6fb();});});})['then'](function(){return _0x2a6616[_0xec57('0xd0')](_0x19cf01,_0x129b2b,function(_0x3167cc){if(!_0x3167cc)fs[_0xec57('0xe9')](_0x19cf01);});});});}else{return _0x2a6616['sendStatus'](0xc8);}})[_0xec57('0x2a')](handleError(_0x2a6616,null));};
\ No newline at end of file
+var _0xe53f=['split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','rows','addTags','setTags','omit','Tag','emit','mailInteractionTags:save','removeTags','download','unix','root','tmp','join','server','transcript-%d-%s.zip','attachments','push','Attachment','Attachments','Messages','from','bcc','createdAt','get','each','missing.recipient@your.company.com','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','readFileSync','build','writeFileSync','unlinkSync','sendStatus','eml-format','rimraf','zip-dir','moment','util','path','lodash','juice','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','end','status','json','offset','undefined','limit','count','update','error','stack','name','send','index','map','MailInteraction','rawAttributes','type','key','getOptions','findAll','query','user','then','catch','model','keys','attributes','fields','length','includeAll','include','merge','options','find','create','body','params','describe','MailMessage','addMessage','ids','getMessages','filters','nolimit','order','sort','where','pick','MailInteractionId','filter'];(function(_0x4e6d0e,_0x4630d6){var _0x44cb4f=function(_0x72bba0){while(--_0x72bba0){_0x4e6d0e['push'](_0x4e6d0e['shift']());}};_0x44cb4f(++_0x4630d6);}(_0xe53f,0x94));var _0xfe53=function(_0x2589ed,_0x3dca09){_0x2589ed=_0x2589ed-0x0;var _0x4b8e6b=_0xe53f[_0x2589ed];return _0x4b8e6b;};'use strict';var emlformat=require(_0xfe53('0x0'));var rimraf=require(_0xfe53('0x1'));var zipdir=require(_0xfe53('0x2'));var moment=require(_0xfe53('0x3'));var BPromise=require('bluebird');var util=require(_0xfe53('0x4'));var path=require(_0xfe53('0x5'));var fs=require('fs');var _=require(_0xfe53('0x6'));var juice=require(_0xfe53('0x7'));var Redis=require('ioredis');var interaction=require('../../components/interaction/service');var qs=require('../../components/parsers/qs');var logger=require(_0xfe53('0x8'))(_0xfe53('0x9'));var config=require(_0xfe53('0xa'));var db=require(_0xfe53('0xb'))['db'];var htmlEntities=require(_0xfe53('0xc'));config[_0xfe53('0xd')]=_['defaults'](config['redis'],{'host':_0xfe53('0xe'),'port':0x18eb});var socket=require(_0xfe53('0xf'))(new Redis(config['redis']));require(_0xfe53('0x10'))[_0xfe53('0x11')](socket);function respondWithStatusCode(_0x140d67,_0x2eb651){_0x2eb651=_0x2eb651||0xcc;return function(_0x2b7711){if(_0x2b7711){return _0x140d67['sendStatus'](_0x2eb651);}return _0x140d67['status'](_0x2eb651)[_0xfe53('0x12')]();};}function respondWithResult(_0x4218d9,_0x5608ea){_0x5608ea=_0x5608ea||0xc8;return function(_0x434cd6){if(_0x434cd6){return _0x4218d9[_0xfe53('0x13')](_0x5608ea)[_0xfe53('0x14')](_0x434cd6);}};}function respondWithFilteredResult(_0x305bad,_0x2d7c3e){return function(_0x344eaa){if(_0x344eaa){var _0x5e168a=typeof _0x2d7c3e[_0xfe53('0x15')]===_0xfe53('0x16')&&typeof _0x2d7c3e[_0xfe53('0x17')]==='undefined';var _0x2e9c0a=_0x344eaa[_0xfe53('0x18')];var _0x18f5b2=_0x5e168a?0x0:_0x2d7c3e[_0xfe53('0x15')];var _0x53cca3=_0x5e168a?_0x344eaa[_0xfe53('0x18')]:_0x2d7c3e[_0xfe53('0x15')]+_0x2d7c3e[_0xfe53('0x17')];var _0x21e903;if(_0x53cca3>=_0x2e9c0a){_0x53cca3=_0x2e9c0a;_0x21e903=0xc8;}else{_0x21e903=0xce;}_0x305bad[_0xfe53('0x13')](_0x21e903);return _0x305bad['set']('Content-Range',_0x18f5b2+'-'+_0x53cca3+'/'+_0x2e9c0a)[_0xfe53('0x14')](_0x344eaa);}return null;};}function saveUpdates(_0x37e797){return function(_0x835066){if(_0x835066){return _0x835066[_0xfe53('0x19')](_0x37e797)['then'](function(_0x89ab46){return _0x89ab46;});}return null;};}function removeEntity(_0x3507fd){return function(_0x4f3703){if(_0x4f3703){return _0x4f3703['destroy']()['then'](function(){_0x3507fd[_0xfe53('0x13')](0xcc)[_0xfe53('0x12')]();});}};}function handleEntityNotFound(_0x5d8aab){return function(_0x51a30e){if(!_0x51a30e){_0x5d8aab['sendStatus'](0x194);}return _0x51a30e;};}function handleError(_0x3fcaa1,_0x42f3b8){_0x42f3b8=_0x42f3b8||0x1f4;return function(_0x5917e4){logger[_0xfe53('0x1a')](_0x5917e4[_0xfe53('0x1b')]);if(_0x5917e4[_0xfe53('0x1c')]){delete _0x5917e4['name'];}_0x3fcaa1[_0xfe53('0x13')](_0x42f3b8)[_0xfe53('0x1d')](_0x5917e4);};}exports[_0xfe53('0x1e')]=function(_0x3b709a,_0x3adbab){var _0x2044ac={};var _0xce4ee1=_[_0xfe53('0x1f')](db[_0xfe53('0x20')][_0xfe53('0x21')],function(_0x4948e1){return{'name':_0x4948e1['fieldName'],'type':_0x4948e1[_0xfe53('0x22')][_0xfe53('0x23')]};});_0x2044ac=qs[_0xfe53('0x24')](_0xce4ee1,_0x3b709a);return interaction[_0xfe53('0x25')]('mail',_0x3b709a[_0xfe53('0x26')],_0x3b709a[_0xfe53('0x27')],_0x2044ac,_0xce4ee1)[_0xfe53('0x28')](respondWithFilteredResult(_0x3adbab,_0x2044ac))[_0xfe53('0x29')](handleError(_0x3adbab,null));};exports['show']=function(_0x29f500,_0x4125bc){var _0x349217={'raw':![],'where':{'id':_0x29f500['params']['id']}},_0x7ceda1={};_0x7ceda1[_0xfe53('0x2a')]=_[_0xfe53('0x2b')](db['MailInteraction']['rawAttributes']);_0x7ceda1[_0xfe53('0x26')]=_[_0xfe53('0x2b')](_0x29f500[_0xfe53('0x26')]);_0x7ceda1['filters']=_['intersection'](_0x7ceda1[_0xfe53('0x2a')],_0x7ceda1[_0xfe53('0x26')]);_0x349217[_0xfe53('0x2c')]=_['intersection'](_0x7ceda1['model'],qs[_0xfe53('0x2d')](_0x29f500[_0xfe53('0x26')][_0xfe53('0x2d')]));_0x349217[_0xfe53('0x2c')]=_0x349217['attributes'][_0xfe53('0x2e')]?_0x349217[_0xfe53('0x2c')]:_0x7ceda1[_0xfe53('0x2a')];if(_0x29f500[_0xfe53('0x26')][_0xfe53('0x2f')]){_0x349217[_0xfe53('0x30')]=[{'all':!![]}];}_0x349217=_[_0xfe53('0x31')]({},_0x349217,_0x29f500[_0xfe53('0x32')]);return db[_0xfe53('0x20')][_0xfe53('0x33')](_0x349217)[_0xfe53('0x28')](handleEntityNotFound(_0x4125bc,null))[_0xfe53('0x28')](respondWithResult(_0x4125bc,null))['catch'](handleError(_0x4125bc,null));};exports[_0xfe53('0x34')]=function(_0x1802cd,_0x1a36ee){return db[_0xfe53('0x20')][_0xfe53('0x34')](_0x1802cd[_0xfe53('0x35')],{})['then'](respondWithResult(_0x1a36ee,0xc9))[_0xfe53('0x29')](handleError(_0x1a36ee,null));};exports[_0xfe53('0x19')]=function(_0x4eff65,_0x3c15ef){if(_0x4eff65['body']['id']){delete _0x4eff65['body']['id'];}return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x4eff65[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x3c15ef,null))[_0xfe53('0x28')](saveUpdates(_0x4eff65[_0xfe53('0x35')],null))[_0xfe53('0x28')](respondWithResult(_0x3c15ef,null))[_0xfe53('0x29')](handleError(_0x3c15ef,null));};exports['destroy']=function(_0x3b1a66,_0x41261a){return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x3b1a66[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x41261a,null))[_0xfe53('0x28')](removeEntity(_0x41261a,null))[_0xfe53('0x29')](handleError(_0x41261a,null));};exports['describe']=function(_0x417d19,_0x33b145){return db[_0xfe53('0x20')][_0xfe53('0x37')]()['then'](respondWithResult(_0x33b145,null))['catch'](handleError(_0x33b145,null));};exports['addMessage']=function(_0x512d1e,_0x4b8af3){return db[_0xfe53('0x38')][_0xfe53('0x33')]({'where':{'id':_0x512d1e[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x4b8af3,null))[_0xfe53('0x28')](function(_0xe19642){if(_0xe19642){return _0xe19642[_0xfe53('0x39')](_0x512d1e[_0xfe53('0x35')][_0xfe53('0x3a')],_['omit'](_0x512d1e['body'],['ids','id'])||{});}})[_0xfe53('0x28')](respondWithResult(_0x4b8af3,null))[_0xfe53('0x29')](handleError(_0x4b8af3,null));};exports[_0xfe53('0x3b')]=function(_0x41452c,_0x5afda9){var _0x165f6b={'raw':![],'where':{}};var _0x34d466={};var _0x451e30={'count':0x0,'rows':[]};return db[_0xfe53('0x20')]['findOne']({'where':{'id':_0x41452c[_0xfe53('0x36')]['id']}})['then'](handleEntityNotFound(_0x5afda9,null))[_0xfe53('0x28')](function(_0x179d4c){if(_0x179d4c){_0x34d466['model']=_[_0xfe53('0x2b')](db[_0xfe53('0x38')][_0xfe53('0x21')]);_0x34d466[_0xfe53('0x26')]=_[_0xfe53('0x2b')](_0x41452c[_0xfe53('0x26')]);_0x34d466[_0xfe53('0x3c')]=_['intersection'](_0x34d466[_0xfe53('0x2a')],_0x34d466[_0xfe53('0x26')]);_0x165f6b['attributes']=_['intersection'](_0x34d466['model'],qs[_0xfe53('0x2d')](_0x41452c['query'][_0xfe53('0x2d')]));_0x165f6b[_0xfe53('0x2c')]=_0x165f6b['attributes'][_0xfe53('0x2e')]?_0x165f6b[_0xfe53('0x2c')]:_0x34d466['model'];if(!_0x41452c['query']['hasOwnProperty'](_0xfe53('0x3d'))){_0x165f6b[_0xfe53('0x17')]=qs[_0xfe53('0x17')](_0x41452c['query']['limit']);_0x165f6b[_0xfe53('0x15')]=qs[_0xfe53('0x15')](_0x41452c[_0xfe53('0x26')][_0xfe53('0x15')]);}_0x165f6b[_0xfe53('0x3e')]=qs['sort'](_0x41452c[_0xfe53('0x26')][_0xfe53('0x3f')]);_0x165f6b[_0xfe53('0x40')]=qs[_0xfe53('0x3c')](_[_0xfe53('0x41')](_0x41452c[_0xfe53('0x26')],_0x34d466[_0xfe53('0x3c')]));_0x165f6b[_0xfe53('0x40')][_0xfe53('0x42')]=_0x179d4c['id'];if(_0x41452c[_0xfe53('0x26')][_0xfe53('0x43')]){_0x165f6b[_0xfe53('0x40')]=_[_0xfe53('0x31')](_0x165f6b[_0xfe53('0x40')],{'$or':_[_0xfe53('0x1f')](_0x165f6b[_0xfe53('0x2c')],function(_0x417fd3){var _0x3b6077={};_0x3b6077[_0x417fd3]={'$like':'%'+_0x41452c[_0xfe53('0x26')][_0xfe53('0x43')]+'%'};return _0x3b6077;})});}if(_0x41452c[_0xfe53('0x26')]['$gte']){var _0x557406=_0x41452c[_0xfe53('0x26')]['$gte'][_0xfe53('0x44')](',');var _0x3976fd={};_0x3976fd[_0x557406[0x0]]={'$gte':moment(_0x557406[0x1])[_0xfe53('0x45')](_0xfe53('0x46'))};_0x165f6b[_0xfe53('0x40')]=_[_0xfe53('0x31')](_0x165f6b[_0xfe53('0x40')],_0x3976fd);}_0x165f6b=_[_0xfe53('0x31')]({},_0x165f6b,_0x41452c[_0xfe53('0x32')]);return db[_0xfe53('0x38')][_0xfe53('0x18')]({'where':_0x165f6b[_0xfe53('0x40')]})['then'](function(_0x30547c){_0x451e30[_0xfe53('0x18')]=_0x30547c;if(_0x41452c[_0xfe53('0x26')][_0xfe53('0x2f')]){_0x165f6b[_0xfe53('0x30')]=[{'all':!![]}];}return db[_0xfe53('0x38')][_0xfe53('0x25')](_0x165f6b);})['then'](function(_0x2875ef){if(_0x41452c['query'][_0xfe53('0x47')]===_0xfe53('0x48')){for(var _0x34d948=0x0;_0x34d948<_0x2875ef[_0xfe53('0x2e')];_0x34d948++){_0x2875ef[_0x34d948][_0xfe53('0x35')]=juice(_0x2875ef[_0x34d948]['body']);}}_0x451e30[_0xfe53('0x49')]=_0x2875ef;return _0x451e30;});}})[_0xfe53('0x28')](respondWithFilteredResult(_0x5afda9,_0x165f6b))[_0xfe53('0x29')](handleError(_0x5afda9,null));};exports[_0xfe53('0x4a')]=function(_0x2868df,_0x51b21e){return db['MailInteraction'][_0xfe53('0x33')]({'where':{'id':_0x2868df[_0xfe53('0x36')]['id']}})[_0xfe53('0x28')](handleEntityNotFound(_0x51b21e,null))[_0xfe53('0x28')](function(_0x15171e){if(_0x15171e){return _0x15171e[_0xfe53('0x4b')](_0x2868df['body'][_0xfe53('0x3a')],_[_0xfe53('0x4c')](_0x2868df[_0xfe53('0x35')],[_0xfe53('0x3a'),'id'])||{})['spread'](function(){return db[_0xfe53('0x4d')][_0xfe53('0x25')]({'attributes':['id',_0xfe53('0x1c'),'color'],'where':{'id':_0x2868df[_0xfe53('0x35')][_0xfe53('0x3a')]}});})[_0xfe53('0x28')](function(_0x325a31){socket[_0xfe53('0x4e')](_0xfe53('0x4f'),{'id':Number(_0x2868df[_0xfe53('0x36')]['id']),'tags':_0x325a31||[]});return{'id':Number(_0x2868df[_0xfe53('0x36')]['id']),'tags':_0x325a31||[]};});}})[_0xfe53('0x28')](respondWithResult(_0x51b21e,null))['catch'](handleError(_0x51b21e,null));};exports[_0xfe53('0x50')]=function(_0x31c84c,_0x4b8e1e){return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x31c84c[_0xfe53('0x36')]['id']}})['then'](handleEntityNotFound(_0x4b8e1e,null))[_0xfe53('0x28')](function(_0x2c4aed){if(_0x2c4aed){return _0x2c4aed[_0xfe53('0x50')](_0x31c84c[_0xfe53('0x26')][_0xfe53('0x3a')]);}})[_0xfe53('0x28')](respondWithStatusCode(_0x4b8e1e,null))[_0xfe53('0x29')](handleError(_0x4b8e1e,null));};exports[_0xfe53('0x51')]=function(_0x577fcc,_0x690608){var _0x362cd7=moment()[_0xfe53('0x52')]()['toString']();var _0x247caf=path['join'](config[_0xfe53('0x53')],'server','files',_0xfe53('0x54'));var _0x2cb755=path[_0xfe53('0x55')](config[_0xfe53('0x53')],_0xfe53('0x56'),'files','attachments');var _0x5416c0=path[_0xfe53('0x55')](_0x247caf,_0x362cd7);var _0x169b1c=util[_0xfe53('0x45')](_0xfe53('0x57'),_0x577fcc[_0xfe53('0x36')]['id'],_0x362cd7);var _0x4699c0=path['join'](_0x247caf,_0x169b1c);var _0x329bdb=[];if(_0x577fcc[_0xfe53('0x26')][_0xfe53('0x58')]){_0x329bdb[_0xfe53('0x59')]({'model':db[_0xfe53('0x5a')],'as':_0xfe53('0x5b'),'raw':!![]});}var _0x27c6fa=[{'model':db[_0xfe53('0x38')],'as':_0xfe53('0x5c'),'attributes':['id',_0xfe53('0x35'),_0xfe53('0x5d'),'to','cc',_0xfe53('0x5e'),'subject',_0xfe53('0x5f')],'where':{'secret':![]},'order':qs[_0xfe53('0x3f')]('id'),'include':_0x329bdb}];return db[_0xfe53('0x20')][_0xfe53('0x33')]({'where':{'id':_0x577fcc['params']['id']},'include':_0x27c6fa})[_0xfe53('0x28')](handleEntityNotFound(_0x690608,null))[_0xfe53('0x28')](function(_0x27fe99){if(_0x27fe99&&_0x27fe99[_0xfe53('0x5c')]){var _0x532d8c=_0x27fe99[_0xfe53('0x60')]({'plain':!![]});fs['mkdirSync'](_0x5416c0);return BPromise[_0xfe53('0x61')](_0x532d8c[_0xfe53('0x5c')],function(_0x20f832,_0x3c6efb){var _0x41e3eb={'from':_0x20f832[_0xfe53('0x5d')],'to':_0x20f832['to']||_0xfe53('0x62'),'subject':_0x20f832['subject'],'html':htmlEntities['decode'](_0x20f832[_0xfe53('0x35')]),'headers':{'Date':moment(_0x20f832[_0xfe53('0x5f')])[_0xfe53('0x45')](_0xfe53('0x63'))},'attachments':[]};if(_0x20f832['cc']){_0x41e3eb[_0xfe53('0x64')]['Cc']=_0x20f832['cc'];}if(_0x20f832[_0xfe53('0x5e')]){_0x41e3eb[_0xfe53('0x64')][_0xfe53('0x65')]=_0x20f832['bcc'];}return new BPromise(function(_0x32080b,_0x37b817){if(_0x20f832[_0xfe53('0x5b')]){for(var _0x457f9c=0x0;_0x457f9c<_0x20f832[_0xfe53('0x5b')][_0xfe53('0x2e')];_0x457f9c++){var _0x38177f=_0x20f832[_0xfe53('0x5b')][_0x457f9c];var _0x5b46eb=path[_0xfe53('0x55')](_0x2cb755,_0x38177f[_0xfe53('0x66')]);if(fs['existsSync'](_0x5b46eb)){_0x41e3eb[_0xfe53('0x58')]['push']({'name':_0x38177f[_0xfe53('0x1c')],'contentType':_0x38177f[_0xfe53('0x22')],'data':fs[_0xfe53('0x67')](_0x5b46eb)});}}}emlformat[_0xfe53('0x68')](_0x41e3eb,function(_0x3ca824,_0x1d8285){if(_0x3ca824)return _0x37b817(_0x3ca824);fs[_0xfe53('0x69')](path[_0xfe53('0x55')](_0x5416c0,util[_0xfe53('0x45')]('message%d.eml',_0x3c6efb)),_0x1d8285);return _0x32080b(_0x1d8285);});});})[_0xfe53('0x28')](function(){return new BPromise(function(_0x5d02a6,_0x41f075){zipdir(_0x5416c0,{'saveTo':_0x4699c0},function(_0x52d766,_0x483c37){if(_0x52d766)return _0x41f075(_0x52d766);return _0x5d02a6(_0x483c37);});})[_0xfe53('0x28')](function(){return new BPromise(function(_0x47d8ac,_0x3be57d){rimraf(_0x5416c0,function(_0x3cdeaf){if(_0x3cdeaf)_0x3be57d(_0x3cdeaf);return _0x47d8ac();});});})[_0xfe53('0x28')](function(){return _0x690608[_0xfe53('0x51')](_0x4699c0,_0x169b1c,function(_0x2fb9fc){if(!_0x2fb9fc)fs[_0xfe53('0x6a')](_0x4699c0);});});});}else{return _0x690608[_0xfe53('0x6b')](0xc8);}})['catch'](handleError(_0x690608,null));};
\ No newline at end of file