Built motion from commit 97153652.|2.6.26
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 540eb43..4658697 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xeb5e=['replace','isNumeric','i.id\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','contactName','DESC','having','resolve','journey','i.MailAccountId\x20IS\x20NOT\x20NULL','user','agent','getMailAccounts','i.MailAccountId\x20IS\x20NULL','role','sequelize','toString','keyBy','a.key','Account.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.closed','i.attach','i.lastMsgDirection','i.subject','i.disposition','i.secondDisposition','i.thirdDisposition','i.substatus','i.ContactId','i.UserId','Contact.firstName','c.lastName','Contact.lastName','Contact.email','c.phone','Contact.phone','c.fax','o.fullname','o.internal','Owner.internal','ui.MailInteractionId\x20IN\x20?','groupBy','MailInteractionId','findOne','rows','show','params','includeAll','merge','options','create','body','describe','addMessage','MailMessage','ids','omit','format','YYYY-MM-DD\x20HH:mm:ss','include','findAll','addTags','setTags','Tag','mailInteractionTags:save','removeTags','download','join','root','server','tmp','files','transcript-%d-%s.zip','attachments','Attachment','Messages','bcc','subject','mkdirSync','headers','Bcc','Attachments','basename','existsSync','readFileSync','build','log','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','html-to-text','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','redis','defaults','localhost','./mailInteraction.socket','register','sendStatus','end','status','json','count','offset','limit','set','reject','save','update','then','destroy','error','name','map','fullname','TagIds','Tags','split','forEach','push','MailInteraction','lastMsgBody','lastMsgText','trimStart','catch','index','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','sort','where','pick','select','field','color','from','tools_tags','u.id','u.fullname','ui.MailInteractionId','user_has_mail_interactions','users','left_join','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','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','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','unreadMessages','`\x20=\x200','`\x20>\x200','Contact','value','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','text','start','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','operator','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','buildExpression','plainBody','some','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','tag','isArray','filter'];(function(_0x21addb,_0x70324c){var _0x290642=function(_0xac787f){while(--_0xac787f){_0x21addb['push'](_0x21addb['shift']());}};_0x290642(++_0x70324c);}(_0xeb5e,0x151));var _0xeeb5=function(_0x13e741,_0x5d3c24){_0x13e741=_0x13e741-0x0;var _0x3f8bb3=_0xeb5e[_0x13e741];return _0x3f8bb3;};'use strict';var pdf=require(_0xeeb5('0x0'));var emlformat=require(_0xeeb5('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xeeb5('0x2'));var jsonpatch=require(_0xeeb5('0x3'));var rp=require(_0xeeb5('0x4'));var moment=require(_0xeeb5('0x5'));var BPromise=require(_0xeeb5('0x6'));var Mustache=require(_0xeeb5('0x7'));var util=require(_0xeeb5('0x8'));var path=require('path');var sox=require(_0xeeb5('0x9'));var csv=require(_0xeeb5('0xa'));var ejs=require(_0xeeb5('0xb'));var fs=require('fs');var _=require(_0xeeb5('0xc'));var squel=require(_0xeeb5('0xd'));var crypto=require(_0xeeb5('0xe'));var jsforce=require(_0xeeb5('0xf'));var deskjs=require(_0xeeb5('0x10'));var toCsv=require(_0xeeb5('0xa'));var querystring=require(_0xeeb5('0x11'));var Papa=require(_0xeeb5('0x12'));var htmlToText=require(_0xeeb5('0x13'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xeeb5('0x14'));var as=require(_0xeeb5('0x15'));var hardwareService=require(_0xeeb5('0x16'));var logger=require(_0xeeb5('0x17'))(_0xeeb5('0x18'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xeeb5('0x19'))['db'];config[_0xeeb5('0x1a')]=_[_0xeeb5('0x1b')](config['redis'],{'host':_0xeeb5('0x1c'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xeeb5('0x1a')]));require(_0xeeb5('0x1d'))[_0xeeb5('0x1e')](socket);function respondWithStatusCode(_0x220ede,_0xdf0827){_0xdf0827=_0xdf0827||0xcc;return function(_0x56e84c){if(_0x56e84c){return _0x220ede[_0xeeb5('0x1f')](_0xdf0827);}return _0x220ede['status'](_0xdf0827)[_0xeeb5('0x20')]();};}function respondWithResult(_0x3c0fe7,_0x4c652e){_0x4c652e=_0x4c652e||0xc8;return function(_0x5ceec9){if(_0x5ceec9){return _0x3c0fe7[_0xeeb5('0x21')](_0x4c652e)[_0xeeb5('0x22')](_0x5ceec9);}};}function respondWithFilteredResult(_0x499bd6,_0x24a09a){return function(_0x26c9f7){if(_0x26c9f7){var _0xfef960=_0x26c9f7[_0xeeb5('0x23')],_0x4cc0ad=_0x24a09a[_0xeeb5('0x24')],_0x43c2fe=_0x24a09a['offset']+_0x24a09a[_0xeeb5('0x25')],_0x5c2fe7;if(_0x43c2fe>=_0xfef960){_0x43c2fe=_0xfef960;_0x5c2fe7=0xc8;}else{_0x5c2fe7=0xce;}_0x499bd6['status'](_0x5c2fe7);return _0x499bd6[_0xeeb5('0x26')]('Content-Range',_0x4cc0ad+'-'+_0x43c2fe+'/'+_0xfef960)['json'](_0x26c9f7);}return null;};}function patchUpdates(_0x31431d){return function(_0xd20fdc){try{jsonpatch['apply'](_0xd20fdc,_0x31431d,!![]);}catch(_0x44be0c){return BPromise[_0xeeb5('0x27')](_0x44be0c);}return _0xd20fdc[_0xeeb5('0x28')]();};}function saveUpdates(_0x2fe7c5,_0x55052c){return function(_0x2e6267){if(_0x2e6267){return _0x2e6267[_0xeeb5('0x29')](_0x2fe7c5)[_0xeeb5('0x2a')](function(_0x498f72){return _0x498f72;});}return null;};}function removeEntity(_0x3b8494,_0x3d6bbf){return function(_0x32a5cf){if(_0x32a5cf){return _0x32a5cf[_0xeeb5('0x2b')]()[_0xeeb5('0x2a')](function(){_0x3b8494[_0xeeb5('0x21')](0xcc)[_0xeeb5('0x20')]();});}};}function handleEntityNotFound(_0x48b6f7,_0xafe70d){return function(_0x59b296){if(!_0x59b296){_0x48b6f7[_0xeeb5('0x1f')](0x194);}return _0x59b296;};}function handleError(_0x6fad50,_0x3f6c02){_0x3f6c02=_0x3f6c02||0x1f4;return function(_0xf6bdf2){logger[_0xeeb5('0x2c')](_0xf6bdf2['stack']);if(_0xf6bdf2[_0xeeb5('0x2d')]){delete _0xf6bdf2[_0xeeb5('0x2d')];}_0x6fad50[_0xeeb5('0x21')](_0x3f6c02)['send'](_0xf6bdf2);};}function getInteractionUsers(_0x36789e,_0x1c10b5){return new BPromise(function(_0x87b79a,_0x4e17cb){try{if(_0x1c10b5[_0x36789e['id']]){_0x36789e['Users']=_[_0xeeb5('0x2e')](_0x1c10b5[_0x36789e['id']],function(_0x24e963){return{'id':_0x24e963['id'],'fullname':_0x24e963[_0xeeb5('0x2f')]};});}}catch(_0x124798){_0x4e17cb(_0x124798);}_0x87b79a(_0x36789e);});}function getInteractionTags(_0x478080,_0x57056b){return new BPromise(function(_0x1a1e49,_0x48404e){try{if(_0x478080[_0xeeb5('0x30')]){_0x478080[_0xeeb5('0x31')]=[];_0x478080[_0xeeb5('0x30')][_0xeeb5('0x32')](',')[_0xeeb5('0x33')](function(_0x2071ad){_0x478080[_0xeeb5('0x31')][_0xeeb5('0x34')](_0x57056b[_0x2071ad]);});}delete _0x478080['TagIds'];}catch(_0x519a8d){_0x48404e(_0x519a8d);}_0x1a1e49(_0x478080);});}function getLastMessageText(_0x44e6de){return new BPromise(function(_0x23854f,_0x340bcc){return db[_0xeeb5('0x35')]['findOne']({'where':{'id':_0x44e6de['id']},'attributes':[_0xeeb5('0x36'),_0xeeb5('0x37')],'raw':!![]})[_0xeeb5('0x2a')](function(_0x280e2c){if(!_0x280e2c[_0xeeb5('0x37')]){_0x44e6de[_0xeeb5('0x37')]=_[_0xeeb5('0x38')](htmlToText['fromString'](_0x280e2c[_0xeeb5('0x36')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]}));}else{_0x44e6de['lastMsgText']=_0x280e2c[_0xeeb5('0x37')];}_0x23854f(_0x44e6de);})['catch'](function(_0x11c567){_0x340bcc(_0x11c567);});});}function updateMailInteraction(_0x2c3f21,_0x5b1f78,_0x16c752,_0x5edcc5){return new BPromise(function(_0x6cad47,_0xb34d55){return getInteractionUsers(_0x2c3f21,_0x16c752)[_0xeeb5('0x2a')](function(_0x99889f){return getInteractionTags(_0x99889f,_0x5b1f78);})[_0xeeb5('0x2a')](function(_0x28858d){if(_0x5edcc5){_0x6cad47(getLastMessageText(_0x28858d));}else{_0x6cad47(_0x28858d);}})[_0xeeb5('0x39')](function(_0x334ccc){_0xb34d55(_0x334ccc);});});}exports[_0xeeb5('0x3a')]=function(_0x1f1ca1,_0x5d23cb){var _0x13ac58={},_0x5e4fb1={},_0x26b6bb={'count':0x0,'rows':[]};var _0x219807=_[_0xeeb5('0x2e')](db[_0xeeb5('0x35')][_0xeeb5('0x3b')],function(_0x184f8e){return{'name':_0x184f8e[_0xeeb5('0x3c')],'type':_0x184f8e[_0xeeb5('0x3d')][_0xeeb5('0x3e')]};});_0x5e4fb1['model']=_[_0xeeb5('0x2e')](_0x219807,_0xeeb5('0x2d'));_0x5e4fb1[_0xeeb5('0x3f')]=_[_0xeeb5('0x40')](_0x1f1ca1[_0xeeb5('0x3f')]);_0x5e4fb1[_0xeeb5('0x41')]=_[_0xeeb5('0x42')](_0x5e4fb1[_0xeeb5('0x43')],_0x5e4fb1['query']);_0x13ac58['attributes']=_[_0xeeb5('0x42')](_0x5e4fb1['model'],qs['fields'](_0x1f1ca1['query'][_0xeeb5('0x44')]));_0x13ac58[_0xeeb5('0x45')]=_0x13ac58['attributes'][_0xeeb5('0x46')]?_0x13ac58[_0xeeb5('0x45')]:_0x5e4fb1[_0xeeb5('0x43')];if(!_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x47')](_0xeeb5('0x48'))){_0x13ac58[_0xeeb5('0x25')]=qs[_0xeeb5('0x25')](_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x25')]);_0x13ac58[_0xeeb5('0x24')]=qs[_0xeeb5('0x24')](_0x1f1ca1[_0xeeb5('0x3f')]['offset']);}_0x13ac58['order']=qs[_0xeeb5('0x49')](_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x49')]);_0x13ac58[_0xeeb5('0x4a')]=qs[_0xeeb5('0x41')](_[_0xeeb5('0x4b')](_0x1f1ca1[_0xeeb5('0x3f')],_0x5e4fb1[_0xeeb5('0x41')]),_0x219807);var _0x4d1ae6=[];var _0x3c754b=squel[_0xeeb5('0x4c')]()[_0xeeb5('0x4d')]('id')[_0xeeb5('0x4d')](_0xeeb5('0x2d'))[_0xeeb5('0x4d')](_0xeeb5('0x4e'))[_0xeeb5('0x4f')](_0xeeb5('0x50'));var _0x74eb8d=squel['select']()[_0xeeb5('0x4d')](_0xeeb5('0x51'))[_0xeeb5('0x4d')](_0xeeb5('0x52'))[_0xeeb5('0x4d')](_0xeeb5('0x53'))[_0xeeb5('0x4f')](_0xeeb5('0x54'),'ui')['left_join'](_0xeeb5('0x55'),'u','u.id\x20=\x20ui.UserId');var _0x5176ea=squel[_0xeeb5('0x4c')]()[_0xeeb5('0x4f')]('mail_interactions','i')[_0xeeb5('0x56')](_0xeeb5('0x57'),'c',_0xeeb5('0x58'))[_0xeeb5('0x56')](_0xeeb5('0x55'),'o',_0xeeb5('0x59'))['left_join'](_0xeeb5('0x5a'),'a',_0xeeb5('0x5b'))[_0xeeb5('0x56')](_0xeeb5('0x5c'),'me',_0xeeb5('0x5d'))[_0xeeb5('0x56')](_0xeeb5('0x5e'),'it',_0xeeb5('0x5f'))[_0xeeb5('0x56')](_0xeeb5('0x50'),'t',_0xeeb5('0x60'));var _0x22290c=squel[_0xeeb5('0x61')]();var _0x591415=[];var _0x4db640=squel['expr']();var _0x50abda;if(_0x1f1ca1['query'][_0xeeb5('0x62')]){_0x50abda=as[_0xeeb5('0x63')](_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x62')]);var _0x20e46a=_0x50abda[_0xeeb5('0x64')];for(var _0x530d6b=0x0;_0x530d6b<_0x50abda['conditions']['length'];_0x530d6b++){var _0x470ed9=_0x50abda[_0xeeb5('0x65')][_0x530d6b];var _0x56064f='i';var _0x1e2ef9=_['find'](_0x219807,[_0xeeb5('0x2d'),_0x470ed9[_0xeeb5('0x4d')]]);if(!_0x1e2ef9){switch(_0x470ed9[_0xeeb5('0x4d')]){case _0xeeb5('0x66'):if(_0x470ed9['value']==0x1){_0x5176ea['having']('`'+_0x470ed9[_0xeeb5('0x4d')]+_0xeeb5('0x67'));}else{_0x5176ea['having']('`'+_0x470ed9[_0xeeb5('0x4d')]+_0xeeb5('0x68'));}break;case _0xeeb5('0x69'):if(_0x470ed9['operator']==='$substring'){if(_0x470ed9[_0xeeb5('0x6a')][_0xeeb5('0x32')]('\x20')[_0xeeb5('0x46')]>0x1){_0x22290c[_0x20e46a](_0xeeb5('0x6b'),qs[_0xeeb5('0x6c')](_0x470ed9[_0xeeb5('0x6a')]),null);}else{var _0x75ce7e='%'+_0x470ed9[_0xeeb5('0x6a')]+'%';_0x22290c[_0x20e46a](_0xeeb5('0x6d'),_0x75ce7e,_0x75ce7e,_0x75ce7e);}}else{_0x1e2ef9=_[_0xeeb5('0x6e')](_0x219807,[_0xeeb5('0x2d'),_0xeeb5('0x6f')]);_0x470ed9[_0xeeb5('0x4d')]=_0xeeb5('0x6f');_0x1dc86d=as['buildExpression'](_0x56064f,_0x1e2ef9[_0xeeb5('0x3d')],_0x470ed9);_0x22290c[_0x20e46a](_0x1dc86d[_0xeeb5('0x70')],_0x1dc86d['value'][_0xeeb5('0x71')],_0x1dc86d[_0xeeb5('0x6a')][_0xeeb5('0x20')]);}break;case'Tag':var _0x55e038=_0x470ed9[_0xeeb5('0x6a')][_0xeeb5('0x32')](',')['map'](function(_0x4ef45b){return Number(_0x4ef45b);});_0x55e038[_0xeeb5('0x33')](function(_0x4b3900){_0x4db640['or'](_0xeeb5('0x72'),'%,'+_0x4b3900+',%');});_0x591415=_[_0xeeb5('0x73')](_0x591415,_0x55e038);break;case'User':if(_0x470ed9[_0xeeb5('0x74')]===_0xeeb5('0x75')){_0x22290c[_0x20e46a](_0xeeb5('0x76'),'%'+_0x470ed9['value']+'%',null);}else{_0x1e2ef9=_[_0xeeb5('0x6e')](_0x219807,[_0xeeb5('0x2d'),'UserId']);_0x470ed9[_0xeeb5('0x4d')]='UserId';_0x1dc86d=as[_0xeeb5('0x77')](_0x56064f,_0x1e2ef9['type'],_0x470ed9);_0x22290c[_0x20e46a](_0x1dc86d['text'],_0x1dc86d['value'][_0xeeb5('0x71')],_0x1dc86d['value'][_0xeeb5('0x20')]);}break;case _0xeeb5('0x78'):_0x1dc86d=as[_0xeeb5('0x77')]('me',null,_0x470ed9);_0x22290c[_0x20e46a](_0x1dc86d[_0xeeb5('0x70')],_0x1dc86d[_0xeeb5('0x6a')]['start'],_0x1dc86d[_0xeeb5('0x6a')]['end']);break;}}else{var _0x1dc86d=as[_0xeeb5('0x77')](_0x56064f,_0x1e2ef9[_0xeeb5('0x3d')],_0x470ed9);_0x22290c[_0x20e46a](_0x1dc86d['text'],_0x1dc86d[_0xeeb5('0x6a')][_0xeeb5('0x71')],_0x1dc86d[_0xeeb5('0x6a')][_0xeeb5('0x20')]);}}}else{var _0xf37196=_(_0x1f1ca1['query'])['keys']()['map'](function(_0x3a8bca){return _[_0xeeb5('0x79')](_0x219807,[_0xeeb5('0x2d'),_0x3a8bca])?_0x3a8bca:undefined;})['compact']()[_0xeeb5('0x6a')]();if(!_[_0xeeb5('0x7a')](_0xf37196)){_0xf37196[_0xeeb5('0x33')](function(_0x2fbebd){if(_0x2fbebd===_0xeeb5('0x7b')){_0x5176ea[_0xeeb5('0x4a')](_0xeeb5('0x7c'),[][_0xeeb5('0x7d')](_0x1f1ca1[_0xeeb5('0x3f')][_0x2fbebd]));}else if(_0x2fbebd===_0xeeb5('0x7e')){var _0x34fc13=JSON[_0xeeb5('0x7f')](_0x1f1ca1['query'][_0x2fbebd])[_0xeeb5('0x80')];var _0x55aa01=JSON[_0xeeb5('0x7f')](_0x1f1ca1['query'][_0x2fbebd])[_0xeeb5('0x81')];_0x5176ea[_0xeeb5('0x4a')](_0xeeb5('0x82'),_0x34fc13,_0x55aa01);}else{if(_0x1f1ca1[_0xeeb5('0x3f')][_0x2fbebd]===_0xeeb5('0x83')){_0x5176ea[_0xeeb5('0x4a')]('i.'+_0x2fbebd+'\x20IS\x20NULL');}else{_0x5176ea['where']('i.'+_0x2fbebd+_0xeeb5('0x84'),_0x1f1ca1[_0xeeb5('0x3f')][_0x2fbebd]);}}});}if(_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x85')]){if(_0x1f1ca1['query'][_0xeeb5('0x85')]==0x1){_0x5176ea['having']('`unreadMessages`\x20=\x200');}else{_0x5176ea['having']('`unreadMessages`\x20>\x200');}}if(_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x86')]){_0x591415=_[_0xeeb5('0x87')](_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x86')])?_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x86')]:new Array(_0x1f1ca1[_0xeeb5('0x3f')]['tag']);_0x591415['forEach'](function(_0x295f62){_0x4db640['or'](_0xeeb5('0x72'),'%,'+_0x295f62+',%');});}if(_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x88')]){var _0x33101a=_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x88')][_0xeeb5('0x89')]('\x5c','\x5c\x5c')[_0xeeb5('0x89')](/'/g,'\x27\x27');if(qs[_0xeeb5('0x8a')](_0x33101a)){_0x22290c['or'](_0xeeb5('0x8b'),_0x33101a+'%');}else if(qs[_0xeeb5('0x8c')](_0x33101a)){_0x22290c['or'](_0xeeb5('0x8d'),_0x33101a+'%');}else{_0x22290c['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x33101a))['or'](_0xeeb5('0x8e'),qs['getFullTextValue'](_0x33101a));}}}_0x5176ea['where'](_0x22290c);_0x5176ea[_0xeeb5('0x8f')](_0xeeb5('0x90'));var _0x2e2424={'type':db['Sequelize'][_0xeeb5('0x91')][_0xeeb5('0x92')],'raw':!![]};var _0x14c1cf=_0x5176ea[_0xeeb5('0x93')]();_0x14c1cf[_0xeeb5('0x4d')](_0xeeb5('0x90'));_0x14c1cf['field'](_0xeeb5('0x94'),_0xeeb5('0x66'));if(_0x13ac58[_0xeeb5('0x95')]){_0x13ac58[_0xeeb5('0x95')][_0xeeb5('0x33')](function(_0x5de8bf){var _0x3993c8=_0x5de8bf[0x0]===_0xeeb5('0x96')?_0x5de8bf[0x0]:'i.'+_0x5de8bf[0x0];_0x5176ea['order'](_0x3993c8,_0x5de8bf[0x1]===_0xeeb5('0x97')?![]:!![]);});}if(!_[_0xeeb5('0x7a')](_0x591415)){_0x5176ea[_0xeeb5('0x98')](_0x4db640);_0x14c1cf[_0xeeb5('0x4a')]('t.id\x20IN\x20?',_0x591415);}BPromise[_0xeeb5('0x99')]()[_0xeeb5('0x2a')](function(){if(!_0x50abda){if(_0x1f1ca1['query']['MailAccountId']||_0x1f1ca1['query'][_0xeeb5('0x9a')])return;_0x14c1cf[_0xeeb5('0x4a')](_0xeeb5('0x9b'));_0x5176ea[_0xeeb5('0x4a')](_0xeeb5('0x9b'));return;}if(_0x1f1ca1[_0xeeb5('0x9c')]['role']!==_0xeeb5('0x9d'))return;return _0x1f1ca1[_0xeeb5('0x9c')][_0xeeb5('0x9e')]({'attributes':['id'],'raw':!![]})[_0xeeb5('0x2a')](function(_0x4e5fa4){if(_[_0xeeb5('0x7a')](_0x4e5fa4)){_0x14c1cf[_0xeeb5('0x4a')](_0xeeb5('0x9f'));_0x5176ea[_0xeeb5('0x4a')](_0xeeb5('0x9f'));}else{_0x14c1cf[_0xeeb5('0x4a')](_0xeeb5('0x7c'),_[_0xeeb5('0x2e')](_0x4e5fa4,'id'));_0x5176ea[_0xeeb5('0x4a')]('i.MailAccountId\x20IN\x20?',_[_0xeeb5('0x2e')](_0x4e5fa4,'id'));}});})[_0xeeb5('0x2a')](function(){if(_0x1f1ca1[_0xeeb5('0x9c')][_0xeeb5('0xa0')]===_0xeeb5('0x9d')&&!_0x50abda&&!_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x7b')])return[];return db[_0xeeb5('0xa1')]['query'](_0x14c1cf[_0xeeb5('0xa2')](),_0x2e2424);})[_0xeeb5('0x2a')](function(_0x4baf59){_0x26b6bb[_0xeeb5('0x23')]=_0x4baf59[_0xeeb5('0x46')];if(_0x26b6bb['count']===0x0)return[];return db[_0xeeb5('0xa1')][_0xeeb5('0x3f')](_0x3c754b[_0xeeb5('0xa2')](),_0x2e2424)[_0xeeb5('0x2a')](function(_0xbd2689){_0x4d1ae6=_[_0xeeb5('0xa3')](_0xbd2689,'id');_0x2e2424=_['merge'](_0x2e2424,{'model':db[_0xeeb5('0x35')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x1f1ca1[_0xeeb5('0x3f')][_0xeeb5('0x44')]){_0x13ac58[_0xeeb5('0x45')][_0xeeb5('0x33')](function(_0x157a0b){_0x5176ea[_0xeeb5('0x4d')]('i.'+_0x157a0b);});}else{_0x5176ea[_0xeeb5('0x4d')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xeeb5('0x66'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xa4'),_0xeeb5('0xa5'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xa6'),_0xeeb5('0xa7'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xa8'),_0xeeb5('0x96'));_0x5176ea['field']('i.id');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xa9'));_0x5176ea['field']('i.updatedAt');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xaa'));_0x5176ea['field']('i.closedAt');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xab'));_0x5176ea[_0xeeb5('0x4d')]('i.lastMsgAt');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xac'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xad'));_0x5176ea['field'](_0xeeb5('0xae'));_0x5176ea['field'](_0xeeb5('0xaf'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb0'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb1'));_0x5176ea[_0xeeb5('0x4d')]('i.to');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb2'));_0x5176ea[_0xeeb5('0x4d')]('i.MailAccountId');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb3'));_0x5176ea['field']('c.firstName',_0xeeb5('0xb4'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb5'),_0xeeb5('0xb6'));_0x5176ea[_0xeeb5('0x4d')]('c.email',_0xeeb5('0xb7'));_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xb8'),_0xeeb5('0xb9'));_0x5176ea[_0xeeb5('0x4d')]('c.mobile','Contact.mobile');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xba'),'Contact.fax');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xbb'),'Owner.fullname');_0x5176ea[_0xeeb5('0x4d')](_0xeeb5('0xbc'),_0xeeb5('0xbd'));_0x5176ea[_0xeeb5('0x4d')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0xeeb5('0x30'));}if(_0x13ac58['limit'])_0x5176ea[_0xeeb5('0x25')](_0x13ac58['limit']);if(_0x13ac58['offset'])_0x5176ea['offset'](_0x13ac58[_0xeeb5('0x24')]);return db[_0xeeb5('0xa1')][_0xeeb5('0x3f')](_0x5176ea[_0xeeb5('0xa2')](),_0x2e2424);})[_0xeeb5('0x2a')](function(_0x51dda2){_0x74eb8d[_0xeeb5('0x4a')](_0xeeb5('0xbe'),_['map'](_0x51dda2,'id'));return db[_0xeeb5('0xa1')]['query'](_0x74eb8d['toString'](),_0x2e2424)[_0xeeb5('0x2a')](function(_0x4d6381){var _0x40b5ac=_[_0xeeb5('0xbf')](_0x4d6381,_0xeeb5('0xc0'));var _0x490e71=[];return db['Setting'][_0xeeb5('0xc1')]({'attributes':['enableEmailPreview'],'raw':!![]})['then'](function(_0x4f6b5c){var _0x3bb49b=_0x4f6b5c['enableEmailPreview'];_0x51dda2[_0xeeb5('0x33')](function(_0x86808d){_0x490e71['push'](updateMailInteraction(_0x86808d,_0x4d1ae6,_0x40b5ac,_0x3bb49b));});return BPromise['all'](_0x490e71);});});});})[_0xeeb5('0x2a')](function(_0xc52a07){_0x26b6bb[_0xeeb5('0xc2')]=_0xc52a07;return _0x26b6bb;})['then'](respondWithFilteredResult(_0x5d23cb,_0x13ac58))[_0xeeb5('0x39')](handleError(_0x5d23cb,null));};exports[_0xeeb5('0xc3')]=function(_0x4b1f1d,_0x572e89){var _0x4d6dab={'raw':![],'where':{'id':_0x4b1f1d[_0xeeb5('0xc4')]['id']}},_0x47435f={};_0x47435f[_0xeeb5('0x43')]=_[_0xeeb5('0x40')](db[_0xeeb5('0x35')][_0xeeb5('0x3b')]);_0x47435f['query']=_[_0xeeb5('0x40')](_0x4b1f1d[_0xeeb5('0x3f')]);_0x47435f[_0xeeb5('0x41')]=_[_0xeeb5('0x42')](_0x47435f[_0xeeb5('0x43')],_0x47435f[_0xeeb5('0x3f')]);_0x4d6dab[_0xeeb5('0x45')]=_[_0xeeb5('0x42')](_0x47435f[_0xeeb5('0x43')],qs['fields'](_0x4b1f1d['query']['fields']));_0x4d6dab[_0xeeb5('0x45')]=_0x4d6dab[_0xeeb5('0x45')][_0xeeb5('0x46')]?_0x4d6dab[_0xeeb5('0x45')]:_0x47435f[_0xeeb5('0x43')];if(_0x4b1f1d['query'][_0xeeb5('0xc5')]){_0x4d6dab['include']=[{'all':!![]}];}_0x4d6dab=_[_0xeeb5('0xc6')]({},_0x4d6dab,_0x4b1f1d[_0xeeb5('0xc7')]);return db['MailInteraction']['find'](_0x4d6dab)[_0xeeb5('0x2a')](handleEntityNotFound(_0x572e89,null))[_0xeeb5('0x2a')](respondWithResult(_0x572e89,null))['catch'](handleError(_0x572e89,null));};exports[_0xeeb5('0xc8')]=function(_0x5c92f0,_0x14da31){return db[_0xeeb5('0x35')][_0xeeb5('0xc8')](_0x5c92f0[_0xeeb5('0xc9')],{})['then'](respondWithResult(_0x14da31,0xc9))[_0xeeb5('0x39')](handleError(_0x14da31,null));};exports['update']=function(_0x4db17c,_0x26f837){if(_0x4db17c['body']['id']){delete _0x4db17c['body']['id'];}return db[_0xeeb5('0x35')][_0xeeb5('0x6e')]({'where':{'id':_0x4db17c[_0xeeb5('0xc4')]['id']}})[_0xeeb5('0x2a')](handleEntityNotFound(_0x26f837,null))['then'](saveUpdates(_0x4db17c[_0xeeb5('0xc9')],null))[_0xeeb5('0x2a')](respondWithResult(_0x26f837,null))[_0xeeb5('0x39')](handleError(_0x26f837,null));};exports[_0xeeb5('0x2b')]=function(_0x7b3392,_0x35faa0){return db[_0xeeb5('0x35')][_0xeeb5('0x6e')]({'where':{'id':_0x7b3392['params']['id']}})[_0xeeb5('0x2a')](handleEntityNotFound(_0x35faa0,null))[_0xeeb5('0x2a')](removeEntity(_0x35faa0,null))[_0xeeb5('0x39')](handleError(_0x35faa0,null));};exports['describe']=function(_0x4d4d67,_0x1bc1ab){return db[_0xeeb5('0x35')][_0xeeb5('0xca')]()['then'](respondWithResult(_0x1bc1ab,null))[_0xeeb5('0x39')](handleError(_0x1bc1ab,null));};exports[_0xeeb5('0xcb')]=function(_0x1880d5,_0x49b29b,_0x5bc110){return db[_0xeeb5('0xcc')][_0xeeb5('0x6e')]({'where':{'id':_0x1880d5[_0xeeb5('0xc4')]['id']}})['then'](handleEntityNotFound(_0x49b29b,null))['then'](function(_0x28bf7d){if(_0x28bf7d){return _0x28bf7d[_0xeeb5('0xcb')](_0x1880d5[_0xeeb5('0xc9')][_0xeeb5('0xcd')],_[_0xeeb5('0xce')](_0x1880d5['body'],[_0xeeb5('0xcd'),'id'])||{});}})[_0xeeb5('0x2a')](respondWithResult(_0x49b29b,null))[_0xeeb5('0x39')](handleError(_0x49b29b,null));};exports['getMessages']=function(_0x13817a,_0x3657c,_0x483657){var _0x1de2b3={'raw':![],'where':{}};var _0x47348f={};var _0x21016a={'count':0x0,'rows':[]};return db[_0xeeb5('0x35')][_0xeeb5('0xc1')]({'where':{'id':_0x13817a['params']['id']}})['then'](handleEntityNotFound(_0x3657c,null))[_0xeeb5('0x2a')](function(_0xdc2e86){if(_0xdc2e86){_0x47348f[_0xeeb5('0x43')]=_[_0xeeb5('0x40')](db[_0xeeb5('0xcc')][_0xeeb5('0x3b')]);_0x47348f['query']=_[_0xeeb5('0x40')](_0x13817a['query']);_0x47348f[_0xeeb5('0x41')]=_[_0xeeb5('0x42')](_0x47348f['model'],_0x47348f['query']);_0x1de2b3[_0xeeb5('0x45')]=_[_0xeeb5('0x42')](_0x47348f[_0xeeb5('0x43')],qs[_0xeeb5('0x44')](_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0x44')]));_0x1de2b3[_0xeeb5('0x45')]=_0x1de2b3[_0xeeb5('0x45')][_0xeeb5('0x46')]?_0x1de2b3[_0xeeb5('0x45')]:_0x47348f[_0xeeb5('0x43')];if(!_0x13817a[_0xeeb5('0x3f')]['hasOwnProperty'](_0xeeb5('0x48'))){_0x1de2b3['limit']=qs[_0xeeb5('0x25')](_0x13817a['query']['limit']);_0x1de2b3[_0xeeb5('0x24')]=qs[_0xeeb5('0x24')](_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0x24')]);}_0x1de2b3[_0xeeb5('0x95')]=qs[_0xeeb5('0x49')](_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0x49')]);_0x1de2b3[_0xeeb5('0x4a')]=qs[_0xeeb5('0x41')](_[_0xeeb5('0x4b')](_0x13817a[_0xeeb5('0x3f')],_0x47348f['filters']));_0x1de2b3[_0xeeb5('0x4a')][_0xeeb5('0xc0')]=_0xdc2e86['id'];if(_0x13817a['query'][_0xeeb5('0x88')]){_0x1de2b3[_0xeeb5('0x4a')]=_[_0xeeb5('0xc6')](_0x1de2b3[_0xeeb5('0x4a')],{'$or':_[_0xeeb5('0x2e')](_0x1de2b3['attributes'],function(_0x34edda){var _0xf63c5={};_0xf63c5[_0x34edda]={'$like':'%'+_0x13817a['query']['filter']+'%'};return _0xf63c5;})});}if(_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0x80')]){var _0x3afed0=_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0x80')][_0xeeb5('0x32')](',');var _0x5f277a={};_0x5f277a[_0x3afed0[0x0]]={'$gte':moment(_0x3afed0[0x1])[_0xeeb5('0xcf')](_0xeeb5('0xd0'))};_0x1de2b3[_0xeeb5('0x4a')]=_['merge'](_0x1de2b3['where'],_0x5f277a);}_0x1de2b3=_['merge']({},_0x1de2b3,_0x13817a[_0xeeb5('0xc7')]);return db[_0xeeb5('0xcc')][_0xeeb5('0x23')]({'where':_0x1de2b3['where']})[_0xeeb5('0x2a')](function(_0x3127c5){_0x21016a['count']=_0x3127c5;if(_0x13817a[_0xeeb5('0x3f')][_0xeeb5('0xc5')]){_0x1de2b3[_0xeeb5('0xd1')]=[{'all':!![]}];}return db[_0xeeb5('0xcc')][_0xeeb5('0xd2')](_0x1de2b3);})['then'](function(_0x357e18){_0x21016a['rows']=_0x357e18;return _0x21016a;});}})[_0xeeb5('0x2a')](respondWithFilteredResult(_0x3657c,_0x1de2b3))[_0xeeb5('0x39')](handleError(_0x3657c,null));};exports[_0xeeb5('0xd3')]=function(_0x10be28,_0x333ae1,_0x5dccc5){return db[_0xeeb5('0x35')][_0xeeb5('0x6e')]({'where':{'id':_0x10be28[_0xeeb5('0xc4')]['id']}})['then'](handleEntityNotFound(_0x333ae1,null))[_0xeeb5('0x2a')](function(_0x3463b4){if(_0x3463b4){return _0x3463b4[_0xeeb5('0xd4')](_0x10be28[_0xeeb5('0xc9')]['ids'],_[_0xeeb5('0xce')](_0x10be28[_0xeeb5('0xc9')],[_0xeeb5('0xcd'),'id'])||{})['spread'](function(){return db[_0xeeb5('0xd5')][_0xeeb5('0xd2')]({'attributes':['id',_0xeeb5('0x2d'),_0xeeb5('0x4e')],'where':{'id':_0x10be28[_0xeeb5('0xc9')][_0xeeb5('0xcd')]}});})[_0xeeb5('0x2a')](function(_0x58c56c){socket['emit'](_0xeeb5('0xd6'),{'id':Number(_0x10be28[_0xeeb5('0xc4')]['id']),'tags':_0x58c56c||[]});return{'id':Number(_0x10be28[_0xeeb5('0xc4')]['id']),'tags':_0x58c56c||[]};});}})[_0xeeb5('0x2a')](respondWithResult(_0x333ae1,null))[_0xeeb5('0x39')](handleError(_0x333ae1,null));};exports[_0xeeb5('0xd7')]=function(_0x41adca,_0x56f678,_0x559f1f){return db[_0xeeb5('0x35')][_0xeeb5('0x6e')]({'where':{'id':_0x41adca['params']['id']}})[_0xeeb5('0x2a')](handleEntityNotFound(_0x56f678,null))[_0xeeb5('0x2a')](function(_0x118657){if(_0x118657){return _0x118657[_0xeeb5('0xd7')](_0x41adca[_0xeeb5('0x3f')][_0xeeb5('0xcd')]);}})['then'](respondWithStatusCode(_0x56f678,null))[_0xeeb5('0x39')](handleError(_0x56f678,null));};exports[_0xeeb5('0xd8')]=function(_0x2080ed,_0x2daeb6){var _0x78aa66=moment()['unix']()['toString']();var _0x354e2f=path[_0xeeb5('0xd9')](config[_0xeeb5('0xda')],_0xeeb5('0xdb'),'files',_0xeeb5('0xdc'));var _0x2b4cbc=path[_0xeeb5('0xd9')](config[_0xeeb5('0xda')],_0xeeb5('0xdb'),_0xeeb5('0xdd'),'attachments');var _0x5b12a9=path[_0xeeb5('0xd9')](_0x354e2f,_0x78aa66);var _0x417514=util[_0xeeb5('0xcf')](_0xeeb5('0xde'),_0x2080ed[_0xeeb5('0xc4')]['id'],_0x78aa66);var _0x4d24df=path[_0xeeb5('0xd9')](_0x354e2f,_0x417514);var _0x1572c7=[];if(_0x2080ed[_0xeeb5('0x3f')][_0xeeb5('0xdf')]){_0x1572c7[_0xeeb5('0x34')]({'model':db[_0xeeb5('0xe0')],'as':'Attachments','raw':!![]});}var _0x3009d3=[{'model':db[_0xeeb5('0xcc')],'as':_0xeeb5('0xe1'),'attributes':['id',_0xeeb5('0xc9'),_0xeeb5('0x4f'),'to','cc',_0xeeb5('0xe2'),_0xeeb5('0xe3'),_0xeeb5('0x7e')],'where':{'secret':![]},'order':qs[_0xeeb5('0x49')]('id'),'include':_0x1572c7}];return db['MailInteraction'][_0xeeb5('0x6e')]({'where':{'id':_0x2080ed['params']['id']},'include':_0x3009d3})['then'](handleEntityNotFound(_0x2daeb6,null))[_0xeeb5('0x2a')](function(_0x4b9009){if(_0x4b9009&&_0x4b9009[_0xeeb5('0xe1')]){var _0x1c3ed8=_0x4b9009['get']({'plain':!![]});fs[_0xeeb5('0xe4')](_0x5b12a9);return BPromise['each'](_0x1c3ed8[_0xeeb5('0xe1')],function(_0x5de2ce,_0x397c13){var _0xf1f93a={'from':_0x5de2ce[_0xeeb5('0x4f')],'to':_0x5de2ce['to'],'subject':_0x5de2ce[_0xeeb5('0xe3')],'html':_0x5de2ce[_0xeeb5('0xc9')],'headers':{'Date':moment(_0x5de2ce[_0xeeb5('0x7e')])[_0xeeb5('0xcf')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x5de2ce['cc']){_0xf1f93a[_0xeeb5('0xe5')]['Cc']=_0x5de2ce['cc'];}if(_0x5de2ce[_0xeeb5('0xe2')]){_0xf1f93a[_0xeeb5('0xe5')][_0xeeb5('0xe6')]=_0x5de2ce['bcc'];}return new BPromise(function(_0x493187,_0x4f58f5){if(_0x5de2ce[_0xeeb5('0xe7')]){for(var _0x4b62bd=0x0;_0x4b62bd<_0x5de2ce[_0xeeb5('0xe7')][_0xeeb5('0x46')];_0x4b62bd++){var _0x29b50e=_0x5de2ce['Attachments'][_0x4b62bd];var _0x53afc8=path[_0xeeb5('0xd9')](_0x2b4cbc,_0x29b50e[_0xeeb5('0xe8')]);if(fs[_0xeeb5('0xe9')](_0x53afc8)){_0xf1f93a[_0xeeb5('0xdf')]['push']({'name':_0x29b50e[_0xeeb5('0x2d')],'contentType':_0x29b50e[_0xeeb5('0x3d')],'data':fs[_0xeeb5('0xea')](_0x53afc8)});}}}emlformat[_0xeeb5('0xeb')](_0xf1f93a,function(_0x241a68,_0x2dde20){if(_0x241a68)return _0x4f58f5(_0x241a68);fs['writeFileSync'](path['join'](_0x5b12a9,util['format']('message%d.eml',_0x397c13)),_0x2dde20);return _0x493187(_0x2dde20);});});})[_0xeeb5('0x2a')](function(){return new BPromise(function(_0xc5070e,_0x24837f){zipdir(_0x5b12a9,{'saveTo':_0x4d24df},function(_0x561abd,_0x2ec1ef){if(_0x561abd)return _0x24837f(_0x561abd);return _0xc5070e(_0x2ec1ef);});})[_0xeeb5('0x2a')](function(){return new BPromise(function(_0x1645cf,_0x1ef8a1){rimraf(_0x5b12a9,function(_0x32490c){if(_0x32490c)_0x1ef8a1(_0x32490c);return _0x1645cf();});});})[_0xeeb5('0x2a')](function(){return _0x2daeb6[_0xeeb5('0xd8')](_0x4d24df,_0x417514,function(_0xdb718e){if(_0xdb718e){console[_0xeeb5('0xec')]('err',_0xdb718e);}else{fs['unlinkSync'](_0x4d24df);}});});});}else{return _0x2daeb6['sendStatus'](0xc8);}})[_0xeeb5('0x39')](handleError(_0x2daeb6,null));};
\ No newline at end of file
+var _0x34e8=['count','Content-Range','update','then','error','stack','name','send','map','MailInteraction','rawAttributes','type','key','getOptions','findAll','mail','query','user','catch','show','params','model','filters','intersection','fields','attributes','length','includeAll','include','merge','options','create','body','find','describe','addMessage','MailMessage','findOne','keys','hasOwnProperty','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','true','rows','addTags','ids','Tag','color','removeTags','unix','toString','join','root','server','tmp','files','attachments','push','Attachment','Attachments','from','bcc','createdAt','Messages','get','mkdirSync','each','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','build','writeFileSync','message%d.eml','download','eml-format','rimraf','zip-dir','moment','bluebird','util','juice','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit'];(function(_0x543673,_0xe0ea22){var _0x45468c=function(_0x4e44a7){while(--_0x4e44a7){_0x543673['push'](_0x543673['shift']());}};_0x45468c(++_0xe0ea22);}(_0x34e8,0x1a9));var _0x834e=function(_0x32caca,_0x446cd5){_0x32caca=_0x32caca-0x0;var _0x5abadb=_0x34e8[_0x32caca];return _0x5abadb;};'use strict';var emlformat=require(_0x834e('0x0'));var rimraf=require(_0x834e('0x1'));var zipdir=require(_0x834e('0x2'));var moment=require(_0x834e('0x3'));var BPromise=require(_0x834e('0x4'));var util=require(_0x834e('0x5'));var path=require('path');var fs=require('fs');var _=require('lodash');var juice=require(_0x834e('0x6'));var Redis=require(_0x834e('0x7'));var interaction=require(_0x834e('0x8'));var qs=require(_0x834e('0x9'));var logger=require(_0x834e('0xa'))(_0x834e('0xb'));var config=require(_0x834e('0xc'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0x834e('0xd'));config[_0x834e('0xe')]=_[_0x834e('0xf')](config['redis'],{'host':_0x834e('0x10'),'port':0x18eb});var socket=require(_0x834e('0x11'))(new Redis(config['redis']));require(_0x834e('0x12'))[_0x834e('0x13')](socket);function respondWithStatusCode(_0x378061,_0x22f3e2){_0x22f3e2=_0x22f3e2||0xcc;return function(_0x46640c){if(_0x46640c){return _0x378061[_0x834e('0x14')](_0x22f3e2);}return _0x378061[_0x834e('0x15')](_0x22f3e2)[_0x834e('0x16')]();};}function respondWithResult(_0x103d70,_0x30ca4b){_0x30ca4b=_0x30ca4b||0xc8;return function(_0x6cef50){if(_0x6cef50){return _0x103d70[_0x834e('0x15')](_0x30ca4b)[_0x834e('0x17')](_0x6cef50);}};}function respondWithFilteredResult(_0x3b4e98,_0xff034){return function(_0x2b89ad){if(_0x2b89ad){var _0x3c70c2=typeof _0xff034[_0x834e('0x18')]===_0x834e('0x19')&&typeof _0xff034[_0x834e('0x1a')]===_0x834e('0x19');var _0x1fb0db=_0x2b89ad['count'];var _0x2dad6a=_0x3c70c2?0x0:_0xff034[_0x834e('0x18')];var _0x40ef41=_0x3c70c2?_0x2b89ad[_0x834e('0x1b')]:_0xff034['offset']+_0xff034['limit'];var _0x1fa4d3;if(_0x40ef41>=_0x1fb0db){_0x40ef41=_0x1fb0db;_0x1fa4d3=0xc8;}else{_0x1fa4d3=0xce;}_0x3b4e98[_0x834e('0x15')](_0x1fa4d3);return _0x3b4e98['set'](_0x834e('0x1c'),_0x2dad6a+'-'+_0x40ef41+'/'+_0x1fb0db)[_0x834e('0x17')](_0x2b89ad);}return null;};}function saveUpdates(_0x46c4e5){return function(_0x244294){if(_0x244294){return _0x244294[_0x834e('0x1d')](_0x46c4e5)[_0x834e('0x1e')](function(_0x3ca178){return _0x3ca178;});}return null;};}function removeEntity(_0x4d53d4){return function(_0x4d7c03){if(_0x4d7c03){return _0x4d7c03['destroy']()[_0x834e('0x1e')](function(){_0x4d53d4[_0x834e('0x15')](0xcc)[_0x834e('0x16')]();});}};}function handleEntityNotFound(_0x597c7c){return function(_0x2bdd65){if(!_0x2bdd65){_0x597c7c[_0x834e('0x14')](0x194);}return _0x2bdd65;};}function handleError(_0x59e635,_0x315ead){_0x315ead=_0x315ead||0x1f4;return function(_0x2ae700){logger[_0x834e('0x1f')](_0x2ae700[_0x834e('0x20')]);if(_0x2ae700[_0x834e('0x21')]){delete _0x2ae700[_0x834e('0x21')];}_0x59e635[_0x834e('0x15')](_0x315ead)[_0x834e('0x22')](_0x2ae700);};}exports['index']=function(_0x2eaa9b,_0x42bc53){var _0x57e3fe={};var _0x5a407c=_[_0x834e('0x23')](db[_0x834e('0x24')][_0x834e('0x25')],function(_0x3b4207){return{'name':_0x3b4207['fieldName'],'type':_0x3b4207[_0x834e('0x26')][_0x834e('0x27')]};});_0x57e3fe=qs[_0x834e('0x28')](_0x5a407c,_0x2eaa9b);return interaction[_0x834e('0x29')](_0x834e('0x2a'),_0x2eaa9b[_0x834e('0x2b')],_0x2eaa9b[_0x834e('0x2c')],_0x57e3fe,_0x5a407c)[_0x834e('0x1e')](respondWithFilteredResult(_0x42bc53,_0x57e3fe))[_0x834e('0x2d')](handleError(_0x42bc53,null));};exports[_0x834e('0x2e')]=function(_0x258718,_0x3f9eeb){var _0x5a442f={'raw':![],'where':{'id':_0x258718[_0x834e('0x2f')]['id']}},_0x5cbd20={};_0x5cbd20[_0x834e('0x30')]=_['keys'](db['MailInteraction'][_0x834e('0x25')]);_0x5cbd20[_0x834e('0x2b')]=_['keys'](_0x258718[_0x834e('0x2b')]);_0x5cbd20[_0x834e('0x31')]=_['intersection'](_0x5cbd20[_0x834e('0x30')],_0x5cbd20[_0x834e('0x2b')]);_0x5a442f['attributes']=_[_0x834e('0x32')](_0x5cbd20[_0x834e('0x30')],qs['fields'](_0x258718['query'][_0x834e('0x33')]));_0x5a442f[_0x834e('0x34')]=_0x5a442f[_0x834e('0x34')][_0x834e('0x35')]?_0x5a442f['attributes']:_0x5cbd20['model'];if(_0x258718[_0x834e('0x2b')][_0x834e('0x36')]){_0x5a442f[_0x834e('0x37')]=[{'all':!![]}];}_0x5a442f=_[_0x834e('0x38')]({},_0x5a442f,_0x258718[_0x834e('0x39')]);return db['MailInteraction']['find'](_0x5a442f)['then'](handleEntityNotFound(_0x3f9eeb,null))[_0x834e('0x1e')](respondWithResult(_0x3f9eeb,null))['catch'](handleError(_0x3f9eeb,null));};exports[_0x834e('0x3a')]=function(_0x4bafee,_0x47e4bb){return db['MailInteraction'][_0x834e('0x3a')](_0x4bafee[_0x834e('0x3b')],{})[_0x834e('0x1e')](respondWithResult(_0x47e4bb,0xc9))[_0x834e('0x2d')](handleError(_0x47e4bb,null));};exports['update']=function(_0x264695,_0x95d69e){if(_0x264695[_0x834e('0x3b')]['id']){delete _0x264695[_0x834e('0x3b')]['id'];}return db['MailInteraction'][_0x834e('0x3c')]({'where':{'id':_0x264695[_0x834e('0x2f')]['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x95d69e,null))[_0x834e('0x1e')](saveUpdates(_0x264695['body'],null))[_0x834e('0x1e')](respondWithResult(_0x95d69e,null))[_0x834e('0x2d')](handleError(_0x95d69e,null));};exports['destroy']=function(_0x1c67c7,_0x863f9c){return db[_0x834e('0x24')][_0x834e('0x3c')]({'where':{'id':_0x1c67c7[_0x834e('0x2f')]['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x863f9c,null))['then'](removeEntity(_0x863f9c,null))[_0x834e('0x2d')](handleError(_0x863f9c,null));};exports[_0x834e('0x3d')]=function(_0x1d600f,_0x5d1f0e){return db['MailInteraction'][_0x834e('0x3d')]()['then'](respondWithResult(_0x5d1f0e,null))[_0x834e('0x2d')](handleError(_0x5d1f0e,null));};exports[_0x834e('0x3e')]=function(_0x1f61ce,_0x21f9ec){return db[_0x834e('0x3f')]['find']({'where':{'id':_0x1f61ce[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x21f9ec,null))[_0x834e('0x1e')](function(_0xd538a4){if(_0xd538a4){return _0xd538a4[_0x834e('0x3e')](_0x1f61ce[_0x834e('0x3b')]['ids'],_['omit'](_0x1f61ce[_0x834e('0x3b')],['ids','id'])||{});}})[_0x834e('0x1e')](respondWithResult(_0x21f9ec,null))['catch'](handleError(_0x21f9ec,null));};exports['getMessages']=function(_0x3b0988,_0x464011){var _0x332e53={'raw':![],'where':{}};var _0x56b063={};var _0x3b725c={'count':0x0,'rows':[]};return db['MailInteraction'][_0x834e('0x40')]({'where':{'id':_0x3b0988[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x464011,null))[_0x834e('0x1e')](function(_0xf7d8bf){if(_0xf7d8bf){_0x56b063['model']=_[_0x834e('0x41')](db[_0x834e('0x3f')][_0x834e('0x25')]);_0x56b063['query']=_[_0x834e('0x41')](_0x3b0988[_0x834e('0x2b')]);_0x56b063[_0x834e('0x31')]=_[_0x834e('0x32')](_0x56b063[_0x834e('0x30')],_0x56b063[_0x834e('0x2b')]);_0x332e53[_0x834e('0x34')]=_[_0x834e('0x32')](_0x56b063['model'],qs['fields'](_0x3b0988[_0x834e('0x2b')][_0x834e('0x33')]));_0x332e53[_0x834e('0x34')]=_0x332e53[_0x834e('0x34')]['length']?_0x332e53[_0x834e('0x34')]:_0x56b063['model'];if(!_0x3b0988[_0x834e('0x2b')][_0x834e('0x42')](_0x834e('0x43'))){_0x332e53[_0x834e('0x1a')]=qs['limit'](_0x3b0988['query']['limit']);_0x332e53[_0x834e('0x18')]=qs[_0x834e('0x18')](_0x3b0988[_0x834e('0x2b')][_0x834e('0x18')]);}_0x332e53[_0x834e('0x44')]=qs[_0x834e('0x45')](_0x3b0988[_0x834e('0x2b')]['sort']);_0x332e53[_0x834e('0x46')]=qs['filters'](_[_0x834e('0x47')](_0x3b0988[_0x834e('0x2b')],_0x56b063[_0x834e('0x31')]));_0x332e53[_0x834e('0x46')][_0x834e('0x48')]=_0xf7d8bf['id'];if(_0x3b0988[_0x834e('0x2b')]['filter']){_0x332e53[_0x834e('0x46')]=_[_0x834e('0x38')](_0x332e53['where'],{'$or':_[_0x834e('0x23')](_0x332e53[_0x834e('0x34')],function(_0x34524c){var _0xf9d91b={};_0xf9d91b[_0x34524c]={'$like':'%'+_0x3b0988[_0x834e('0x2b')][_0x834e('0x49')]+'%'};return _0xf9d91b;})});}if(_0x3b0988[_0x834e('0x2b')][_0x834e('0x4a')]){var _0x452a3a=_0x3b0988[_0x834e('0x2b')][_0x834e('0x4a')][_0x834e('0x4b')](',');var _0x4b0bdd={};_0x4b0bdd[_0x452a3a[0x0]]={'$gte':moment(_0x452a3a[0x1])[_0x834e('0x4c')](_0x834e('0x4d'))};_0x332e53[_0x834e('0x46')]=_[_0x834e('0x38')](_0x332e53[_0x834e('0x46')],_0x4b0bdd);}_0x332e53=_[_0x834e('0x38')]({},_0x332e53,_0x3b0988['options']);return db[_0x834e('0x3f')][_0x834e('0x1b')]({'where':_0x332e53['where']})[_0x834e('0x1e')](function(_0x33065c){_0x3b725c[_0x834e('0x1b')]=_0x33065c;if(_0x3b0988['query'][_0x834e('0x36')]){_0x332e53['include']=[{'all':!![]}];}return db[_0x834e('0x3f')][_0x834e('0x29')](_0x332e53);})[_0x834e('0x1e')](function(_0x3e3339){if(_0x3b0988['query']['inlineCss']===_0x834e('0x4e')){for(var _0x11dc84=0x0;_0x11dc84<_0x3e3339[_0x834e('0x35')];_0x11dc84++){_0x3e3339[_0x11dc84][_0x834e('0x3b')]=juice(_0x3e3339[_0x11dc84]['body']);}}_0x3b725c[_0x834e('0x4f')]=_0x3e3339;return _0x3b725c;});}})[_0x834e('0x1e')](respondWithFilteredResult(_0x464011,_0x332e53))[_0x834e('0x2d')](handleError(_0x464011,null));};exports[_0x834e('0x50')]=function(_0x273ef9,_0x4480c9){return db[_0x834e('0x24')][_0x834e('0x3c')]({'where':{'id':_0x273ef9[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x4480c9,null))[_0x834e('0x1e')](function(_0x12d984){if(_0x12d984){return _0x12d984['setTags'](_0x273ef9[_0x834e('0x3b')][_0x834e('0x51')],_['omit'](_0x273ef9[_0x834e('0x3b')],[_0x834e('0x51'),'id'])||{})['spread'](function(){return db[_0x834e('0x52')]['findAll']({'attributes':['id',_0x834e('0x21'),_0x834e('0x53')],'where':{'id':_0x273ef9['body'][_0x834e('0x51')]}});})[_0x834e('0x1e')](function(_0x5ee7c2){socket['emit']('mailInteractionTags:save',{'id':Number(_0x273ef9['params']['id']),'tags':_0x5ee7c2||[]});return{'id':Number(_0x273ef9['params']['id']),'tags':_0x5ee7c2||[]};});}})[_0x834e('0x1e')](respondWithResult(_0x4480c9,null))['catch'](handleError(_0x4480c9,null));};exports[_0x834e('0x54')]=function(_0x1287ba,_0x2f2682){return db[_0x834e('0x24')]['find']({'where':{'id':_0x1287ba['params']['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x2f2682,null))[_0x834e('0x1e')](function(_0x38a3f6){if(_0x38a3f6){return _0x38a3f6[_0x834e('0x54')](_0x1287ba[_0x834e('0x2b')][_0x834e('0x51')]);}})['then'](respondWithStatusCode(_0x2f2682,null))[_0x834e('0x2d')](handleError(_0x2f2682,null));};exports['download']=function(_0xb65ebf,_0x43ccdf){var _0x100376=moment()[_0x834e('0x55')]()[_0x834e('0x56')]();var _0xd0dc46=path[_0x834e('0x57')](config[_0x834e('0x58')],_0x834e('0x59'),'files',_0x834e('0x5a'));var _0x5bf20c=path['join'](config[_0x834e('0x58')],_0x834e('0x59'),_0x834e('0x5b'),_0x834e('0x5c'));var _0x17cd1f=path[_0x834e('0x57')](_0xd0dc46,_0x100376);var _0x28bd53=util['format']('transcript-%d-%s.zip',_0xb65ebf[_0x834e('0x2f')]['id'],_0x100376);var _0x47dbba=path[_0x834e('0x57')](_0xd0dc46,_0x28bd53);var _0x111e4d=[];if(_0xb65ebf[_0x834e('0x2b')][_0x834e('0x5c')]){_0x111e4d[_0x834e('0x5d')]({'model':db[_0x834e('0x5e')],'as':_0x834e('0x5f'),'raw':!![]});}var _0x1d314d=[{'model':db['MailMessage'],'as':'Messages','attributes':['id',_0x834e('0x3b'),_0x834e('0x60'),'to','cc',_0x834e('0x61'),'subject',_0x834e('0x62')],'where':{'secret':![]},'order':qs[_0x834e('0x45')]('id'),'include':_0x111e4d}];return db['MailInteraction']['find']({'where':{'id':_0xb65ebf[_0x834e('0x2f')]['id']},'include':_0x1d314d})[_0x834e('0x1e')](handleEntityNotFound(_0x43ccdf,null))[_0x834e('0x1e')](function(_0x595f6b){if(_0x595f6b&&_0x595f6b[_0x834e('0x63')]){var _0x1b0e88=_0x595f6b[_0x834e('0x64')]({'plain':!![]});fs[_0x834e('0x65')](_0x17cd1f);return BPromise[_0x834e('0x66')](_0x1b0e88[_0x834e('0x63')],function(_0x5c69b9,_0x568262){var _0x453575={'from':_0x5c69b9[_0x834e('0x60')],'to':_0x5c69b9['to']||'missing.recipient@your.company.com','subject':_0x5c69b9[_0x834e('0x67')],'html':htmlEntities[_0x834e('0x68')](_0x5c69b9['body']),'headers':{'Date':moment(_0x5c69b9[_0x834e('0x62')])[_0x834e('0x4c')](_0x834e('0x69'))},'attachments':[]};if(_0x5c69b9['cc']){_0x453575[_0x834e('0x6a')]['Cc']=_0x5c69b9['cc'];}if(_0x5c69b9['bcc']){_0x453575[_0x834e('0x6a')]['Bcc']=_0x5c69b9[_0x834e('0x61')];}return new BPromise(function(_0x5d648a,_0x30485e){if(_0x5c69b9[_0x834e('0x5f')]){for(var _0x42cd2f=0x0;_0x42cd2f<_0x5c69b9['Attachments'][_0x834e('0x35')];_0x42cd2f++){var _0x41e62f=_0x5c69b9['Attachments'][_0x42cd2f];var _0x24d5fe=path[_0x834e('0x57')](_0x5bf20c,_0x41e62f[_0x834e('0x6b')]);if(fs[_0x834e('0x6c')](_0x24d5fe)){_0x453575[_0x834e('0x5c')][_0x834e('0x5d')]({'name':_0x41e62f[_0x834e('0x21')],'contentType':_0x41e62f['type'],'data':fs['readFileSync'](_0x24d5fe)});}}}emlformat[_0x834e('0x6d')](_0x453575,function(_0x6f6ede,_0x222466){if(_0x6f6ede)return _0x30485e(_0x6f6ede);fs[_0x834e('0x6e')](path[_0x834e('0x57')](_0x17cd1f,util['format'](_0x834e('0x6f'),_0x568262)),_0x222466);return _0x5d648a(_0x222466);});});})[_0x834e('0x1e')](function(){return new BPromise(function(_0x5b8ee9,_0x4edc22){zipdir(_0x17cd1f,{'saveTo':_0x47dbba},function(_0x2c21bc,_0xb9acf5){if(_0x2c21bc)return _0x4edc22(_0x2c21bc);return _0x5b8ee9(_0xb9acf5);});})[_0x834e('0x1e')](function(){return new BPromise(function(_0x2175ea,_0x460df0){rimraf(_0x17cd1f,function(_0x26b77d){if(_0x26b77d)_0x460df0(_0x26b77d);return _0x2175ea();});});})[_0x834e('0x1e')](function(){return _0x43ccdf[_0x834e('0x70')](_0x47dbba,_0x28bd53,function(_0x3db30e){if(!_0x3db30e)fs['unlinkSync'](_0x47dbba);});});});}else{return _0x43ccdf[_0x834e('0x14')](0xc8);}})[_0x834e('0x2d')](handleError(_0x43ccdf,null));};
\ No newline at end of file