Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 379506b..01e502a 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x0ac3=['field','color','from','u.id','ui.MailInteractionId','user_has_mail_interactions','left_join','users','mail_interactions','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','it.MailInteractionId\x20=\x20i.id','tools_tags','t.id\x20=\x20it.TagId','expr','parseSearch','conditions','find','unreadMessages','`\x20=\x200','having','`\x20>\x200','Contact','$substring','value','split','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?','ContactId','text','start','Tag','User','operator','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','plainBody','buildExpression','keys','some','compact','isEmpty','MailAccountId','i.MailAccountId\x20IN\x20?','concat','createdAt','$gte','$lte','where','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','isArray','tag','filter','replace','c.email\x20LIKE\x20?','MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','group','i.id','QueryTypes','SELECT','clone','contactName','t.id\x20IN\x20?','resolve','i.MailAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getMailAccounts','i.MailAccountId\x20IS\x20NULL','toString','sequelize','keyBy','merge','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','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.updatedAt','i.closed','i.closedAt','i.attach','i.lastMsgAt','i.subject','i.disposition','i.thirdDisposition','i.substatus','i.to','i.ContactId','i.MailAccountId','i.UserId','c.firstName','Contact.firstName','c.lastName','Contact.lastName','Contact.email','c.phone','Contact.phone','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','ui.MailInteractionId\x20IN\x20?','groupBy','enableEmailPreview','all','rows','show','params','includeAll','include','options','create','body','describe','addMessage','ids','omit','getMessages','pick','findAll','inlineCss','true','addTags','setTags','spread','mailInteractionTags:save','removeTags','root','server','files','join','attachments','format','transcript-%d-%s.zip','Attachment','Messages','bcc','get','mkdirSync','each','subject','headers','Bcc','Attachments','basename','readFileSync','message%d.eml','download','log','err','unlinkSync','eml-format','zip-dir','request-promise','bluebird','path','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','html-to-text','juice','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','offset','undefined','count','Content-Range','json','reject','save','update','then','destroy','end','error','stack','name','send','Users','map','fullname','Tags','TagIds','forEach','push','MailMessage','findOne','out','-id','trimStart','catch','index','MailInteraction','rawAttributes','fieldName','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','limit','order','sort','filters','select'];(function(_0x1664fe,_0x31bd8c){var _0x36dd20=function(_0x55a98a){while(--_0x55a98a){_0x1664fe['push'](_0x1664fe['shift']());}};_0x36dd20(++_0x31bd8c);}(_0x0ac3,0x19b));var _0x30ac=function(_0x4411a3,_0x10621f){_0x4411a3=_0x4411a3-0x0;var _0x5808fb=_0x0ac3[_0x4411a3];return _0x5808fb;};'use strict';var emlformat=require(_0x30ac('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x30ac('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x30ac('0x2'));var moment=require('moment');var BPromise=require(_0x30ac('0x3'));var Mustache=require('mustache');var util=require('util');var path=require(_0x30ac('0x4'));var sox=require('sox');var csv=require(_0x30ac('0x5'));var ejs=require(_0x30ac('0x6'));var fs=require('fs');var fs_extra=require(_0x30ac('0x7'));var _=require(_0x30ac('0x8'));var squel=require(_0x30ac('0x9'));var crypto=require(_0x30ac('0xa'));var jsforce=require(_0x30ac('0xb'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x30ac('0xc'));var Papa=require(_0x30ac('0xd'));var htmlToText=require(_0x30ac('0xe'));var juice=require(_0x30ac('0xf'));var Redis=require(_0x30ac('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x30ac('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x30ac('0x12'));var logger=require(_0x30ac('0x13'))(_0x30ac('0x14'));var utils=require(_0x30ac('0x15'));var config=require(_0x30ac('0x16'));var licenseUtil=require(_0x30ac('0x17'));var db=require(_0x30ac('0x18'))['db'];config['redis']=_[_0x30ac('0x19')](config[_0x30ac('0x1a')],{'host':_0x30ac('0x1b'),'port':0x18eb});var socket=require(_0x30ac('0x1c'))(new Redis(config[_0x30ac('0x1a')]));require(_0x30ac('0x1d'))[_0x30ac('0x1e')](socket);function respondWithStatusCode(_0x5dc583,_0xa1a619){_0xa1a619=_0xa1a619||0xcc;return function(_0x56175a){if(_0x56175a){return _0x5dc583[_0x30ac('0x1f')](_0xa1a619);}return _0x5dc583[_0x30ac('0x20')](_0xa1a619)['end']();};}function respondWithResult(_0x61dfaa,_0x3a7b59){_0x3a7b59=_0x3a7b59||0xc8;return function(_0x322d68){if(_0x322d68){return _0x61dfaa[_0x30ac('0x20')](_0x3a7b59)['json'](_0x322d68);}};}function respondWithFilteredResult(_0x16f9a0,_0x2df8ea){return function(_0x43ad99){if(_0x43ad99){var _0xea64be=typeof _0x2df8ea[_0x30ac('0x21')]===_0x30ac('0x22')&&typeof _0x2df8ea['limit']===_0x30ac('0x22');var _0x16616c=_0x43ad99['count'];var _0x476980=_0xea64be?0x0:_0x2df8ea[_0x30ac('0x21')];var _0x145782=_0xea64be?_0x43ad99[_0x30ac('0x23')]:_0x2df8ea['offset']+_0x2df8ea['limit'];var _0x31664e;if(_0x145782>=_0x16616c){_0x145782=_0x16616c;_0x31664e=0xc8;}else{_0x31664e=0xce;}_0x16f9a0['status'](_0x31664e);return _0x16f9a0['set'](_0x30ac('0x24'),_0x476980+'-'+_0x145782+'/'+_0x16616c)[_0x30ac('0x25')](_0x43ad99);}return null;};}function patchUpdates(_0x347290){return function(_0x3eb75d){try{jsonpatch['apply'](_0x3eb75d,_0x347290,!![]);}catch(_0xa93d7e){return BPromise[_0x30ac('0x26')](_0xa93d7e);}return _0x3eb75d[_0x30ac('0x27')]();};}function saveUpdates(_0x5c4ea0,_0x4d252f){return function(_0x54d857){if(_0x54d857){return _0x54d857[_0x30ac('0x28')](_0x5c4ea0)[_0x30ac('0x29')](function(_0x1bf884){return _0x1bf884;});}return null;};}function removeEntity(_0x47064a,_0x43fe4a){return function(_0x598dcc){if(_0x598dcc){return _0x598dcc[_0x30ac('0x2a')]()[_0x30ac('0x29')](function(){_0x47064a[_0x30ac('0x20')](0xcc)[_0x30ac('0x2b')]();});}};}function handleEntityNotFound(_0x6f6880,_0x5acf44){return function(_0x3eb237){if(!_0x3eb237){_0x6f6880[_0x30ac('0x1f')](0x194);}return _0x3eb237;};}function handleError(_0x3d76c7,_0x5ee230){_0x5ee230=_0x5ee230||0x1f4;return function(_0xe47489){logger[_0x30ac('0x2c')](_0xe47489[_0x30ac('0x2d')]);if(_0xe47489[_0x30ac('0x2e')]){delete _0xe47489[_0x30ac('0x2e')];}_0x3d76c7[_0x30ac('0x20')](_0x5ee230)[_0x30ac('0x2f')](_0xe47489);};}function getInteractionUsers(_0x4ace9c,_0xcf6b01){return new BPromise(function(_0x237d30,_0xedfee7){try{if(_0xcf6b01[_0x4ace9c['id']]){_0x4ace9c[_0x30ac('0x30')]=_[_0x30ac('0x31')](_0xcf6b01[_0x4ace9c['id']],function(_0x5f4282){return{'id':_0x5f4282['id'],'fullname':_0x5f4282[_0x30ac('0x32')]};});}}catch(_0x335011){_0xedfee7(_0x335011);}_0x237d30(_0x4ace9c);});}function getInteractionTags(_0x3f3270,_0x27e4fb){return new BPromise(function(_0x1591cb,_0x3f3338){try{if(_0x3f3270['TagIds']){_0x3f3270[_0x30ac('0x33')]=[];_0x3f3270[_0x30ac('0x34')]['split'](',')[_0x30ac('0x35')](function(_0x5329b7){_0x3f3270[_0x30ac('0x33')][_0x30ac('0x36')](_0x27e4fb[_0x5329b7]);});}delete _0x3f3270['TagIds'];}catch(_0x47e041){_0x3f3338(_0x47e041);}_0x1591cb(_0x3f3270);});}function getLastMessageText(_0xac28dd){return new BPromise(function(_0x4f5801,_0x3f462f){return db[_0x30ac('0x37')][_0x30ac('0x38')]({'where':{'$and':[{'MailInteractionId':_0xac28dd['id']},{'$or':[{'direction':'in'},{'$and':[{'direction':_0x30ac('0x39')},{'secret':![]},{'UserId':{'$ne':null}}]}]}]},'attributes':['plainBody'],'order':_0x30ac('0x3a'),'raw':!![]})[_0x30ac('0x29')](function(_0x39568e){if(_0x39568e&&_0x39568e['plainBody']){_0xac28dd['lastMsgText']=_[_0x30ac('0x3b')](_0x39568e['plainBody']);}_0x4f5801(_0xac28dd);})[_0x30ac('0x3c')](function(_0x402d64){_0x3f462f(_0x402d64);});});}function updateMailInteraction(_0x103cec,_0x3c2b3d,_0x73ef00,_0x57694a){return new BPromise(function(_0x1c9e55,_0x13a980){return getInteractionUsers(_0x103cec,_0x73ef00)[_0x30ac('0x29')](function(_0x3cf267){return getInteractionTags(_0x3cf267,_0x3c2b3d);})[_0x30ac('0x29')](function(_0x52439d){if(_0x57694a){_0x1c9e55(getLastMessageText(_0x52439d));}else{_0x1c9e55(_0x52439d);}})[_0x30ac('0x3c')](function(_0x22dc4f){_0x13a980(_0x22dc4f);});});}exports[_0x30ac('0x3d')]=function(_0x102cfd,_0x4e3724){var _0x34a2fd={},_0x39bef4={},_0xdc07ae={'count':0x0,'rows':[]};var _0x34a676=_[_0x30ac('0x31')](db[_0x30ac('0x3e')][_0x30ac('0x3f')],function(_0x2276b5){return{'name':_0x2276b5[_0x30ac('0x40')],'type':_0x2276b5[_0x30ac('0x41')][_0x30ac('0x42')]};});_0x39bef4[_0x30ac('0x43')]=_[_0x30ac('0x31')](_0x34a676,_0x30ac('0x2e'));_0x39bef4[_0x30ac('0x44')]=_['keys'](_0x102cfd['query']);_0x39bef4['filters']=_[_0x30ac('0x45')](_0x39bef4[_0x30ac('0x43')],_0x39bef4[_0x30ac('0x44')]);_0x34a2fd[_0x30ac('0x46')]=_['intersection'](_0x39bef4[_0x30ac('0x43')],qs[_0x30ac('0x47')](_0x102cfd[_0x30ac('0x44')][_0x30ac('0x47')]));_0x34a2fd['attributes']=_0x34a2fd[_0x30ac('0x46')][_0x30ac('0x48')]?_0x34a2fd[_0x30ac('0x46')]:_0x39bef4[_0x30ac('0x43')];if(!_0x102cfd['query'][_0x30ac('0x49')]('nolimit')){_0x34a2fd[_0x30ac('0x4a')]=qs[_0x30ac('0x4a')](_0x102cfd['query'][_0x30ac('0x4a')]);_0x34a2fd['offset']=qs['offset'](_0x102cfd['query'][_0x30ac('0x21')]);}_0x34a2fd[_0x30ac('0x4b')]=qs[_0x30ac('0x4c')](_0x102cfd['query'][_0x30ac('0x4c')]);_0x34a2fd['where']=qs['filters'](_['pick'](_0x102cfd[_0x30ac('0x44')],_0x39bef4[_0x30ac('0x4d')]),_0x34a676);var _0x42422a=[];var _0x3e62be=squel[_0x30ac('0x4e')]()[_0x30ac('0x4f')]('id')[_0x30ac('0x4f')](_0x30ac('0x2e'))[_0x30ac('0x4f')](_0x30ac('0x50'))[_0x30ac('0x51')]('tools_tags');var _0x337174=squel[_0x30ac('0x4e')]()[_0x30ac('0x4f')](_0x30ac('0x52'))['field']('u.fullname')[_0x30ac('0x4f')](_0x30ac('0x53'))[_0x30ac('0x51')](_0x30ac('0x54'),'ui')[_0x30ac('0x55')](_0x30ac('0x56'),'u','u.id\x20=\x20ui.UserId');var _0x58f268=squel[_0x30ac('0x4e')]()[_0x30ac('0x51')](_0x30ac('0x57'),'i')['left_join'](_0x30ac('0x58'),'c',_0x30ac('0x59'))[_0x30ac('0x55')](_0x30ac('0x56'),'o',_0x30ac('0x5a'))[_0x30ac('0x55')](_0x30ac('0x5b'),'a',_0x30ac('0x5c'))[_0x30ac('0x55')](_0x30ac('0x5d'),'me',_0x30ac('0x5e'))[_0x30ac('0x55')]('mail_interaction_has_tags','it',_0x30ac('0x5f'))[_0x30ac('0x55')](_0x30ac('0x60'),'t',_0x30ac('0x61'));var _0x31beba=squel[_0x30ac('0x62')]();var _0x328c94=[];var _0x105847=squel[_0x30ac('0x62')]();var _0x4481bc;if(_0x102cfd[_0x30ac('0x44')]['search']){_0x4481bc=as[_0x30ac('0x63')](_0x102cfd[_0x30ac('0x44')]['search']);var _0x208ee1=_0x4481bc['sqlOperator'];for(var _0x5d8449=0x0;_0x5d8449<_0x4481bc[_0x30ac('0x64')][_0x30ac('0x48')];_0x5d8449++){var _0x4edd66=_0x4481bc[_0x30ac('0x64')][_0x5d8449];var _0x23a97f='i';var _0x419c97=_[_0x30ac('0x65')](_0x34a676,[_0x30ac('0x2e'),_0x4edd66['field']]);if(!_0x419c97){switch(_0x4edd66[_0x30ac('0x4f')]){case _0x30ac('0x66'):if(_0x4edd66['value']==0x1){_0x58f268['having']('`'+_0x4edd66[_0x30ac('0x4f')]+_0x30ac('0x67'));}else{_0x58f268[_0x30ac('0x68')]('`'+_0x4edd66[_0x30ac('0x4f')]+_0x30ac('0x69'));}break;case _0x30ac('0x6a'):if(_0x4edd66['operator']===_0x30ac('0x6b')){if(_0x4edd66[_0x30ac('0x6c')][_0x30ac('0x6d')]('\x20')[_0x30ac('0x48')]>0x1){_0x31beba[_0x208ee1](_0x30ac('0x6e'),qs[_0x30ac('0x6f')](_0x4edd66['value']),null);}else{var _0xa00f51='%'+_0x4edd66['value']+'%';_0x31beba[_0x208ee1](_0x30ac('0x70'),_0xa00f51,_0xa00f51,_0xa00f51);}}else{_0x419c97=_[_0x30ac('0x65')](_0x34a676,[_0x30ac('0x2e'),_0x30ac('0x71')]);_0x4edd66[_0x30ac('0x4f')]=_0x30ac('0x71');_0x3ef3cf=as['buildExpression'](_0x23a97f,_0x419c97['type'],_0x4edd66);_0x31beba[_0x208ee1](_0x3ef3cf[_0x30ac('0x72')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x73')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x2b')]);}break;case _0x30ac('0x74'):var _0x1ecc56=_0x4edd66[_0x30ac('0x6c')][_0x30ac('0x6d')](',')['map'](function(_0x2cc9c0){return Number(_0x2cc9c0);});_0x1ecc56['forEach'](function(_0x216c0b){_0x105847['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x216c0b+',%');});_0x328c94=_['union'](_0x328c94,_0x1ecc56);break;case _0x30ac('0x75'):if(_0x4edd66[_0x30ac('0x76')]===_0x30ac('0x6b')){_0x31beba[_0x208ee1](_0x30ac('0x77'),'%'+_0x4edd66[_0x30ac('0x6c')]+'%',null);}else{_0x419c97=_[_0x30ac('0x65')](_0x34a676,[_0x30ac('0x2e'),_0x30ac('0x78')]);_0x4edd66[_0x30ac('0x4f')]='UserId';_0x3ef3cf=as['buildExpression'](_0x23a97f,_0x419c97['type'],_0x4edd66);_0x31beba[_0x208ee1](_0x3ef3cf[_0x30ac('0x72')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x73')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x2b')]);}break;case _0x30ac('0x79'):_0x3ef3cf=as[_0x30ac('0x7a')]('me',null,_0x4edd66);_0x31beba[_0x208ee1](_0x3ef3cf[_0x30ac('0x72')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x73')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x2b')]);break;}}else{var _0x3ef3cf=as[_0x30ac('0x7a')](_0x23a97f,_0x419c97[_0x30ac('0x41')],_0x4edd66);_0x31beba[_0x208ee1](_0x3ef3cf[_0x30ac('0x72')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x73')],_0x3ef3cf[_0x30ac('0x6c')][_0x30ac('0x2b')]);}}}else{var _0x30062a=_(_0x102cfd[_0x30ac('0x44')])[_0x30ac('0x7b')]()[_0x30ac('0x31')](function(_0x2c28bb){return _[_0x30ac('0x7c')](_0x34a676,[_0x30ac('0x2e'),_0x2c28bb])?_0x2c28bb:undefined;})[_0x30ac('0x7d')]()[_0x30ac('0x6c')]();if(!_[_0x30ac('0x7e')](_0x30062a)){_0x30062a[_0x30ac('0x35')](function(_0x174db5){if(_0x174db5===_0x30ac('0x7f')){_0x58f268['where'](_0x30ac('0x80'),[][_0x30ac('0x81')](_0x102cfd[_0x30ac('0x44')][_0x174db5]));}else if(_0x174db5===_0x30ac('0x82')){var _0x556ba5=JSON['parse'](_0x102cfd[_0x30ac('0x44')][_0x174db5])[_0x30ac('0x83')];var _0x2976e5=JSON['parse'](_0x102cfd['query'][_0x174db5])[_0x30ac('0x84')];_0x58f268[_0x30ac('0x85')](_0x30ac('0x86'),_0x556ba5,_0x2976e5);}else{if(_0x102cfd[_0x30ac('0x44')][_0x174db5]==='null'){_0x58f268['where']('i.'+_0x174db5+_0x30ac('0x87'));}else{_0x58f268['where']('i.'+_0x174db5+_0x30ac('0x88'),_0x102cfd[_0x30ac('0x44')][_0x174db5]);}}});}if(_0x102cfd[_0x30ac('0x44')][_0x30ac('0x89')]){if(_0x102cfd[_0x30ac('0x44')][_0x30ac('0x89')]==0x1){_0x58f268[_0x30ac('0x68')](_0x30ac('0x8a'));}else{_0x58f268['having']('`unreadMessages`\x20>\x200');}}if(_0x102cfd['query']['tag']){_0x328c94=_[_0x30ac('0x8b')](_0x102cfd['query'][_0x30ac('0x8c')])?_0x102cfd['query']['tag']:new Array(_0x102cfd[_0x30ac('0x44')][_0x30ac('0x8c')]);_0x328c94[_0x30ac('0x35')](function(_0x1f3fff){_0x105847['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x1f3fff+',%');});}if(_0x102cfd[_0x30ac('0x44')][_0x30ac('0x8d')]){var _0x2d8186=_0x102cfd[_0x30ac('0x44')][_0x30ac('0x8d')][_0x30ac('0x8e')]('\x5c','\x5c\x5c')[_0x30ac('0x8e')](/'/g,'\x27\x27');if(qs['isNumeric'](_0x2d8186)){_0x31beba['or']('i.id\x20LIKE\x20?',_0x2d8186+'%');}else if(qs['isEmail'](_0x2d8186)){_0x31beba['or'](_0x30ac('0x8f'),_0x2d8186+'%');}else{_0x31beba['or'](_0x30ac('0x90'),qs[_0x30ac('0x6f')](_0x2d8186))['or'](_0x30ac('0x91'),qs[_0x30ac('0x6f')](_0x2d8186));}}}_0x58f268['where'](_0x31beba);_0x58f268[_0x30ac('0x92')](_0x30ac('0x93'));var _0x37ffd7={'type':db['Sequelize'][_0x30ac('0x94')][_0x30ac('0x95')],'raw':!![]};var _0x52cb09=_0x58f268[_0x30ac('0x96')]();_0x52cb09[_0x30ac('0x4f')]('i.id');_0x52cb09[_0x30ac('0x4f')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x30ac('0x66'));if(_0x34a2fd[_0x30ac('0x4b')]){_0x34a2fd[_0x30ac('0x4b')]['forEach'](function(_0x2fc21b){var _0x433853=_0x2fc21b[0x0]===_0x30ac('0x97')?_0x2fc21b[0x0]:'i.'+_0x2fc21b[0x0];_0x58f268[_0x30ac('0x4b')](_0x433853,_0x2fc21b[0x1]==='DESC'?![]:!![]);});}if(!_['isEmpty'](_0x328c94)){_0x58f268[_0x30ac('0x68')](_0x105847);_0x52cb09[_0x30ac('0x85')](_0x30ac('0x98'),_0x328c94);}BPromise[_0x30ac('0x99')]()['then'](function(){if(!_0x4481bc){if(_0x102cfd[_0x30ac('0x44')][_0x30ac('0x7f')])return;_0x52cb09['where'](_0x30ac('0x9a'));_0x58f268[_0x30ac('0x85')](_0x30ac('0x9a'));return;}if(_0x102cfd[_0x30ac('0x9b')][_0x30ac('0x9c')]!==_0x30ac('0x9d'))return;return _0x102cfd[_0x30ac('0x9b')][_0x30ac('0x9e')]({'attributes':['id'],'raw':!![]})[_0x30ac('0x29')](function(_0x38af92){if(_[_0x30ac('0x7e')](_0x38af92)){_0x52cb09['where'](_0x30ac('0x9f'));_0x58f268[_0x30ac('0x85')](_0x30ac('0x9f'));}else{_0x52cb09[_0x30ac('0x85')](_0x30ac('0x80'),_[_0x30ac('0x31')](_0x38af92,'id'));_0x58f268[_0x30ac('0x85')]('i.MailAccountId\x20IN\x20?',_['map'](_0x38af92,'id'));}});})['then'](function(){if(_0x102cfd[_0x30ac('0x9b')][_0x30ac('0x9c')]===_0x30ac('0x9d')&&!_0x4481bc&&!_0x102cfd['query'][_0x30ac('0x7f')])return[];return db['sequelize']['query'](_0x52cb09[_0x30ac('0xa0')](),_0x37ffd7);})[_0x30ac('0x29')](function(_0x9d7604){_0xdc07ae['count']=_0x9d7604[_0x30ac('0x48')];if(_0xdc07ae[_0x30ac('0x23')]===0x0)return[];return db[_0x30ac('0xa1')][_0x30ac('0x44')](_0x3e62be[_0x30ac('0xa0')](),_0x37ffd7)['then'](function(_0xc76cb2){_0x42422a=_[_0x30ac('0xa2')](_0xc76cb2,'id');_0x37ffd7=_[_0x30ac('0xa3')](_0x37ffd7,{'model':db['MailInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x102cfd['query'][_0x30ac('0x47')]){_0x34a2fd[_0x30ac('0x46')][_0x30ac('0x35')](function(_0x4fc0ce){_0x58f268['field']('i.'+_0x4fc0ce);});}else{_0x58f268[_0x30ac('0x4f')](_0x30ac('0xa4'),_0x30ac('0x66'));_0x58f268[_0x30ac('0x4f')]('a.key',_0x30ac('0xa5'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xa6'),_0x30ac('0xa7'));_0x58f268['field'](_0x30ac('0xa8'),_0x30ac('0x97'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0x93'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xa9'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xaa'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xab'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xac'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xad'));_0x58f268['field'](_0x30ac('0xae'));_0x58f268[_0x30ac('0x4f')]('i.lastMsgDirection');_0x58f268['field'](_0x30ac('0xaf'));_0x58f268['field'](_0x30ac('0xb0'));_0x58f268[_0x30ac('0x4f')]('i.secondDisposition');_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb1'));_0x58f268['field'](_0x30ac('0xb2'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb3'));_0x58f268['field'](_0x30ac('0xb4'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb5'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb6'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb7'),_0x30ac('0xb8'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xb9'),_0x30ac('0xba'));_0x58f268[_0x30ac('0x4f')]('c.email',_0x30ac('0xbb'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xbc'),_0x30ac('0xbd'));_0x58f268[_0x30ac('0x4f')]('c.mobile','Contact.mobile');_0x58f268[_0x30ac('0x4f')](_0x30ac('0xbe'),_0x30ac('0xbf'));_0x58f268[_0x30ac('0x4f')](_0x30ac('0xc0'),_0x30ac('0xc1'));_0x58f268['field'](_0x30ac('0xc2'),'Owner.internal');_0x58f268[_0x30ac('0x4f')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x30ac('0x34'));}if(_0x34a2fd[_0x30ac('0x4a')])_0x58f268[_0x30ac('0x4a')](_0x34a2fd[_0x30ac('0x4a')]);if(_0x34a2fd['offset'])_0x58f268[_0x30ac('0x21')](_0x34a2fd[_0x30ac('0x21')]);return db[_0x30ac('0xa1')][_0x30ac('0x44')](_0x58f268[_0x30ac('0xa0')](),_0x37ffd7);})['then'](function(_0xf291a5){if(_0xf291a5[_0x30ac('0x48')]>0x0)_0x337174['where'](_0x30ac('0xc3'),_[_0x30ac('0x31')](_0xf291a5,'id'));return db[_0x30ac('0xa1')][_0x30ac('0x44')](_0x337174[_0x30ac('0xa0')](),_0x37ffd7)[_0x30ac('0x29')](function(_0x3adcdf){var _0x1da0a1=_[_0x30ac('0xc4')](_0x3adcdf,'MailInteractionId');var _0xef106f=[];return db['Setting'][_0x30ac('0x38')]({'attributes':[_0x30ac('0xc5')],'raw':!![]})['then'](function(_0x1ed636){var _0x1ceab4=_0x1ed636[_0x30ac('0xc5')];_0xf291a5['forEach'](function(_0xd8ad07){_0xef106f[_0x30ac('0x36')](updateMailInteraction(_0xd8ad07,_0x42422a,_0x1da0a1,_0x1ceab4));});return BPromise[_0x30ac('0xc6')](_0xef106f);});});});})['then'](function(_0x5f0c12){_0xdc07ae[_0x30ac('0xc7')]=_0x5f0c12;return _0xdc07ae;})['then'](respondWithFilteredResult(_0x4e3724,_0x34a2fd))[_0x30ac('0x3c')](handleError(_0x4e3724,null));};exports[_0x30ac('0xc8')]=function(_0x381400,_0x2b9be3){var _0x379a00={'raw':![],'where':{'id':_0x381400[_0x30ac('0xc9')]['id']}},_0x41f99a={};_0x41f99a[_0x30ac('0x43')]=_[_0x30ac('0x7b')](db[_0x30ac('0x3e')][_0x30ac('0x3f')]);_0x41f99a['query']=_[_0x30ac('0x7b')](_0x381400['query']);_0x41f99a['filters']=_['intersection'](_0x41f99a[_0x30ac('0x43')],_0x41f99a[_0x30ac('0x44')]);_0x379a00[_0x30ac('0x46')]=_['intersection'](_0x41f99a[_0x30ac('0x43')],qs[_0x30ac('0x47')](_0x381400[_0x30ac('0x44')][_0x30ac('0x47')]));_0x379a00[_0x30ac('0x46')]=_0x379a00[_0x30ac('0x46')][_0x30ac('0x48')]?_0x379a00[_0x30ac('0x46')]:_0x41f99a[_0x30ac('0x43')];if(_0x381400[_0x30ac('0x44')][_0x30ac('0xca')]){_0x379a00[_0x30ac('0xcb')]=[{'all':!![]}];}_0x379a00=_[_0x30ac('0xa3')]({},_0x379a00,_0x381400[_0x30ac('0xcc')]);return db[_0x30ac('0x3e')][_0x30ac('0x65')](_0x379a00)['then'](handleEntityNotFound(_0x2b9be3,null))[_0x30ac('0x29')](respondWithResult(_0x2b9be3,null))[_0x30ac('0x3c')](handleError(_0x2b9be3,null));};exports[_0x30ac('0xcd')]=function(_0x15c957,_0x72b987){return db[_0x30ac('0x3e')][_0x30ac('0xcd')](_0x15c957[_0x30ac('0xce')],{})[_0x30ac('0x29')](respondWithResult(_0x72b987,0xc9))[_0x30ac('0x3c')](handleError(_0x72b987,null));};exports[_0x30ac('0x28')]=function(_0x253c83,_0x3c596a){if(_0x253c83['body']['id']){delete _0x253c83[_0x30ac('0xce')]['id'];}return db['MailInteraction'][_0x30ac('0x65')]({'where':{'id':_0x253c83[_0x30ac('0xc9')]['id']}})[_0x30ac('0x29')](handleEntityNotFound(_0x3c596a,null))[_0x30ac('0x29')](saveUpdates(_0x253c83['body'],null))[_0x30ac('0x29')](respondWithResult(_0x3c596a,null))[_0x30ac('0x3c')](handleError(_0x3c596a,null));};exports[_0x30ac('0x2a')]=function(_0x3e1241,_0x20597e){return db[_0x30ac('0x3e')][_0x30ac('0x65')]({'where':{'id':_0x3e1241[_0x30ac('0xc9')]['id']}})[_0x30ac('0x29')](handleEntityNotFound(_0x20597e,null))[_0x30ac('0x29')](removeEntity(_0x20597e,null))['catch'](handleError(_0x20597e,null));};exports[_0x30ac('0xcf')]=function(_0x2f3dad,_0x469aeb){return db['MailInteraction']['describe']()[_0x30ac('0x29')](respondWithResult(_0x469aeb,null))[_0x30ac('0x3c')](handleError(_0x469aeb,null));};exports[_0x30ac('0xd0')]=function(_0x57d601,_0x397d33,_0x4be0dd){return db[_0x30ac('0x37')][_0x30ac('0x65')]({'where':{'id':_0x57d601[_0x30ac('0xc9')]['id']}})['then'](handleEntityNotFound(_0x397d33,null))[_0x30ac('0x29')](function(_0x79316b){if(_0x79316b){return _0x79316b[_0x30ac('0xd0')](_0x57d601[_0x30ac('0xce')][_0x30ac('0xd1')],_[_0x30ac('0xd2')](_0x57d601[_0x30ac('0xce')],[_0x30ac('0xd1'),'id'])||{});}})[_0x30ac('0x29')](respondWithResult(_0x397d33,null))[_0x30ac('0x3c')](handleError(_0x397d33,null));};exports[_0x30ac('0xd3')]=function(_0x15e2c0,_0x41f65c,_0x513aff){var _0x7d9d2b={'raw':![],'where':{}};var _0x3f35ca={};var _0x58a2a3={'count':0x0,'rows':[]};return db[_0x30ac('0x3e')][_0x30ac('0x38')]({'where':{'id':_0x15e2c0[_0x30ac('0xc9')]['id']}})[_0x30ac('0x29')](handleEntityNotFound(_0x41f65c,null))[_0x30ac('0x29')](function(_0x35dac6){if(_0x35dac6){_0x3f35ca[_0x30ac('0x43')]=_[_0x30ac('0x7b')](db[_0x30ac('0x37')][_0x30ac('0x3f')]);_0x3f35ca[_0x30ac('0x44')]=_[_0x30ac('0x7b')](_0x15e2c0['query']);_0x3f35ca[_0x30ac('0x4d')]=_[_0x30ac('0x45')](_0x3f35ca['model'],_0x3f35ca['query']);_0x7d9d2b['attributes']=_['intersection'](_0x3f35ca[_0x30ac('0x43')],qs[_0x30ac('0x47')](_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x47')]));_0x7d9d2b[_0x30ac('0x46')]=_0x7d9d2b[_0x30ac('0x46')][_0x30ac('0x48')]?_0x7d9d2b[_0x30ac('0x46')]:_0x3f35ca[_0x30ac('0x43')];if(!_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x49')]('nolimit')){_0x7d9d2b[_0x30ac('0x4a')]=qs[_0x30ac('0x4a')](_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x4a')]);_0x7d9d2b['offset']=qs[_0x30ac('0x21')](_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x21')]);}_0x7d9d2b[_0x30ac('0x4b')]=qs[_0x30ac('0x4c')](_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x4c')]);_0x7d9d2b[_0x30ac('0x85')]=qs[_0x30ac('0x4d')](_[_0x30ac('0xd4')](_0x15e2c0['query'],_0x3f35ca[_0x30ac('0x4d')]));_0x7d9d2b['where']['MailInteractionId']=_0x35dac6['id'];if(_0x15e2c0[_0x30ac('0x44')]['filter']){_0x7d9d2b['where']=_['merge'](_0x7d9d2b['where'],{'$or':_[_0x30ac('0x31')](_0x7d9d2b[_0x30ac('0x46')],function(_0x40373f){var _0x2fdae2={};_0x2fdae2[_0x40373f]={'$like':'%'+_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x8d')]+'%'};return _0x2fdae2;})});}if(_0x15e2c0['query'][_0x30ac('0x83')]){var _0x2afec6=_0x15e2c0[_0x30ac('0x44')][_0x30ac('0x83')][_0x30ac('0x6d')](',');var _0x95961a={};_0x95961a[_0x2afec6[0x0]]={'$gte':moment(_0x2afec6[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x7d9d2b['where']=_[_0x30ac('0xa3')](_0x7d9d2b['where'],_0x95961a);}_0x7d9d2b=_[_0x30ac('0xa3')]({},_0x7d9d2b,_0x15e2c0[_0x30ac('0xcc')]);return db[_0x30ac('0x37')][_0x30ac('0x23')]({'where':_0x7d9d2b[_0x30ac('0x85')]})['then'](function(_0x3fc77d){_0x58a2a3['count']=_0x3fc77d;if(_0x15e2c0[_0x30ac('0x44')][_0x30ac('0xca')]){_0x7d9d2b[_0x30ac('0xcb')]=[{'all':!![]}];}return db['MailMessage'][_0x30ac('0xd5')](_0x7d9d2b);})['then'](function(_0xf85234){if(_0x15e2c0['query'][_0x30ac('0xd6')]===_0x30ac('0xd7')){for(var _0x462c4a=0x0;_0x462c4a<_0xf85234['length'];_0x462c4a++){_0xf85234[_0x462c4a][_0x30ac('0xce')]=juice(_0xf85234[_0x462c4a][_0x30ac('0xce')]);}}_0x58a2a3[_0x30ac('0xc7')]=_0xf85234;return _0x58a2a3;});}})[_0x30ac('0x29')](respondWithFilteredResult(_0x41f65c,_0x7d9d2b))[_0x30ac('0x3c')](handleError(_0x41f65c,null));};exports[_0x30ac('0xd8')]=function(_0x3c2996,_0x1aeba2,_0x1232f2){return db[_0x30ac('0x3e')][_0x30ac('0x65')]({'where':{'id':_0x3c2996['params']['id']}})['then'](handleEntityNotFound(_0x1aeba2,null))[_0x30ac('0x29')](function(_0x1df449){if(_0x1df449){return _0x1df449[_0x30ac('0xd9')](_0x3c2996[_0x30ac('0xce')]['ids'],_[_0x30ac('0xd2')](_0x3c2996[_0x30ac('0xce')],[_0x30ac('0xd1'),'id'])||{})[_0x30ac('0xda')](function(){return db[_0x30ac('0x74')][_0x30ac('0xd5')]({'attributes':['id','name',_0x30ac('0x50')],'where':{'id':_0x3c2996['body'][_0x30ac('0xd1')]}});})[_0x30ac('0x29')](function(_0x464353){socket['emit'](_0x30ac('0xdb'),{'id':Number(_0x3c2996[_0x30ac('0xc9')]['id']),'tags':_0x464353||[]});return{'id':Number(_0x3c2996[_0x30ac('0xc9')]['id']),'tags':_0x464353||[]};});}})[_0x30ac('0x29')](respondWithResult(_0x1aeba2,null))['catch'](handleError(_0x1aeba2,null));};exports[_0x30ac('0xdc')]=function(_0x1849e3,_0x309af5,_0x18a284){return db['MailInteraction'][_0x30ac('0x65')]({'where':{'id':_0x1849e3['params']['id']}})['then'](handleEntityNotFound(_0x309af5,null))[_0x30ac('0x29')](function(_0xfb4e31){if(_0xfb4e31){return _0xfb4e31[_0x30ac('0xdc')](_0x1849e3[_0x30ac('0x44')][_0x30ac('0xd1')]);}})[_0x30ac('0x29')](respondWithStatusCode(_0x309af5,null))['catch'](handleError(_0x309af5,null));};exports['download']=function(_0x188685,_0x12bb7e){var _0x2f9ca6=moment()['unix']()[_0x30ac('0xa0')]();var _0x50547d=path['join'](config[_0x30ac('0xdd')],_0x30ac('0xde'),_0x30ac('0xdf'),'tmp');var _0x41442c=path[_0x30ac('0xe0')](config[_0x30ac('0xdd')],_0x30ac('0xde'),_0x30ac('0xdf'),_0x30ac('0xe1'));var _0x1709cc=path[_0x30ac('0xe0')](_0x50547d,_0x2f9ca6);var _0x34ab24=util[_0x30ac('0xe2')](_0x30ac('0xe3'),_0x188685[_0x30ac('0xc9')]['id'],_0x2f9ca6);var _0x3ca76e=path[_0x30ac('0xe0')](_0x50547d,_0x34ab24);var _0xdaef8e=[];if(_0x188685[_0x30ac('0x44')][_0x30ac('0xe1')]){_0xdaef8e[_0x30ac('0x36')]({'model':db[_0x30ac('0xe4')],'as':'Attachments','raw':!![]});}var _0x45183b=[{'model':db[_0x30ac('0x37')],'as':_0x30ac('0xe5'),'attributes':['id','body',_0x30ac('0x51'),'to','cc',_0x30ac('0xe6'),'subject',_0x30ac('0x82')],'where':{'secret':![]},'order':qs[_0x30ac('0x4c')]('id'),'include':_0xdaef8e}];return db[_0x30ac('0x3e')]['find']({'where':{'id':_0x188685[_0x30ac('0xc9')]['id']},'include':_0x45183b})[_0x30ac('0x29')](handleEntityNotFound(_0x12bb7e,null))[_0x30ac('0x29')](function(_0x4f7641){if(_0x4f7641&&_0x4f7641['Messages']){var _0x35be15=_0x4f7641[_0x30ac('0xe7')]({'plain':!![]});fs[_0x30ac('0xe8')](_0x1709cc);return BPromise[_0x30ac('0xe9')](_0x35be15[_0x30ac('0xe5')],function(_0x7cfe17,_0xb93c6a){var _0x30430e={'from':_0x7cfe17[_0x30ac('0x51')],'to':_0x7cfe17['to'],'subject':_0x7cfe17[_0x30ac('0xea')],'html':_0x7cfe17['body'],'headers':{'Date':moment(_0x7cfe17['createdAt'])[_0x30ac('0xe2')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x7cfe17['cc']){_0x30430e[_0x30ac('0xeb')]['Cc']=_0x7cfe17['cc'];}if(_0x7cfe17[_0x30ac('0xe6')]){_0x30430e[_0x30ac('0xeb')][_0x30ac('0xec')]=_0x7cfe17[_0x30ac('0xe6')];}return new BPromise(function(_0x10ca6a,_0x3a3be2){if(_0x7cfe17['Attachments']){for(var _0x13e076=0x0;_0x13e076<_0x7cfe17[_0x30ac('0xed')][_0x30ac('0x48')];_0x13e076++){var _0x5aace8=_0x7cfe17[_0x30ac('0xed')][_0x13e076];var _0x4512d5=path[_0x30ac('0xe0')](_0x41442c,_0x5aace8[_0x30ac('0xee')]);if(fs['existsSync'](_0x4512d5)){_0x30430e[_0x30ac('0xe1')]['push']({'name':_0x5aace8[_0x30ac('0x2e')],'contentType':_0x5aace8[_0x30ac('0x41')],'data':fs[_0x30ac('0xef')](_0x4512d5)});}}}emlformat['build'](_0x30430e,function(_0x604c52,_0x224bf1){if(_0x604c52)return _0x3a3be2(_0x604c52);fs['writeFileSync'](path[_0x30ac('0xe0')](_0x1709cc,util[_0x30ac('0xe2')](_0x30ac('0xf0'),_0xb93c6a)),_0x224bf1);return _0x10ca6a(_0x224bf1);});});})[_0x30ac('0x29')](function(){return new BPromise(function(_0xab81ab,_0x2cdc5b){zipdir(_0x1709cc,{'saveTo':_0x3ca76e},function(_0x142ba5,_0x38713f){if(_0x142ba5)return _0x2cdc5b(_0x142ba5);return _0xab81ab(_0x38713f);});})[_0x30ac('0x29')](function(){return new BPromise(function(_0x4d6dbd,_0x3fdcd2){rimraf(_0x1709cc,function(_0x835eed){if(_0x835eed)_0x3fdcd2(_0x835eed);return _0x4d6dbd();});});})['then'](function(){return _0x12bb7e[_0x30ac('0xf1')](_0x3ca76e,_0x34ab24,function(_0x4671f0){if(_0x4671f0){console[_0x30ac('0xf2')](_0x30ac('0xf3'),_0x4671f0);}else{fs[_0x30ac('0xf4')](_0x3ca76e);}});});});}else{return _0x12bb7e[_0x30ac('0x1f')](0xc8);}})[_0x30ac('0x3c')](handleError(_0x12bb7e,null));};
\ No newline at end of file
+var _0xfbaa=['body','destroy','describe','addMessage','ids','omit','getMessages','findOne','MailMessage','hasOwnProperty','sort','where','pick','MailInteractionId','filter','$gte','YYYY-MM-DD\x20HH:mm:ss','rows','addTags','setTags','spread','Tag','color','emit','removeTags','download','unix','toString','join','root','server','files','attachments','push','Attachment','Attachments','Messages','from','bcc','subject','createdAt','get','mkdirSync','each','missing.recipient@your.company.com','decode','format','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','moment','util','path','juice','../../components/interaction/service','../../components/parsers/qs','../../config/environment','../../mysqldb','html-entities','defaults','redis','localhost','sendStatus','end','status','json','undefined','count','offset','limit','set','Content-Range','update','then','error','stack','name','send','index','map','MailInteraction','rawAttributes','fieldName','type','getOptions','findAll','mail','query','user','params','keys','filters','model','attributes','intersection','fields','length','includeAll','include','merge','options','find','catch','create'];(function(_0x17e05b,_0x66e4e5){var _0x5cc4b6=function(_0x25a799){while(--_0x25a799){_0x17e05b['push'](_0x17e05b['shift']());}};_0x5cc4b6(++_0x66e4e5);}(_0xfbaa,0x18b));var _0xafba=function(_0x2aec52,_0x59d962){_0x2aec52=_0x2aec52-0x0;var _0x3b8835=_0xfbaa[_0x2aec52];return _0x3b8835;};'use strict';var emlformat=require(_0xafba('0x0'));var rimraf=require(_0xafba('0x1'));var zipdir=require(_0xafba('0x2'));var moment=require(_0xafba('0x3'));var BPromise=require('bluebird');var util=require(_0xafba('0x4'));var path=require(_0xafba('0x5'));var fs=require('fs');var _=require('lodash');var juice=require(_0xafba('0x6'));var Redis=require('ioredis');var interaction=require(_0xafba('0x7'));var qs=require(_0xafba('0x8'));var logger=require('../../config/logger')('api');var config=require(_0xafba('0x9'));var db=require(_0xafba('0xa'))['db'];var htmlEntities=require(_0xafba('0xb'));config['redis']=_[_0xafba('0xc')](config[_0xafba('0xd')],{'host':_0xafba('0xe'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xafba('0xd')]));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x159d3b,_0x4ea48e){_0x4ea48e=_0x4ea48e||0xcc;return function(_0x51ed2a){if(_0x51ed2a){return _0x159d3b[_0xafba('0xf')](_0x4ea48e);}return _0x159d3b['status'](_0x4ea48e)[_0xafba('0x10')]();};}function respondWithResult(_0x58434c,_0x3bc9f6){_0x3bc9f6=_0x3bc9f6||0xc8;return function(_0x5e1e9e){if(_0x5e1e9e){return _0x58434c[_0xafba('0x11')](_0x3bc9f6)[_0xafba('0x12')](_0x5e1e9e);}};}function respondWithFilteredResult(_0x3d648d,_0x2ee008){return function(_0x2ccfd1){if(_0x2ccfd1){var _0x59ad8e=typeof _0x2ee008['offset']==='undefined'&&typeof _0x2ee008['limit']===_0xafba('0x13');var _0x525c26=_0x2ccfd1[_0xafba('0x14')];var _0x10540d=_0x59ad8e?0x0:_0x2ee008[_0xafba('0x15')];var _0x372596=_0x59ad8e?_0x2ccfd1[_0xafba('0x14')]:_0x2ee008['offset']+_0x2ee008[_0xafba('0x16')];var _0x1c7b34;if(_0x372596>=_0x525c26){_0x372596=_0x525c26;_0x1c7b34=0xc8;}else{_0x1c7b34=0xce;}_0x3d648d[_0xafba('0x11')](_0x1c7b34);return _0x3d648d[_0xafba('0x17')](_0xafba('0x18'),_0x10540d+'-'+_0x372596+'/'+_0x525c26)[_0xafba('0x12')](_0x2ccfd1);}return null;};}function saveUpdates(_0x4533f3){return function(_0x4964bd){if(_0x4964bd){return _0x4964bd[_0xafba('0x19')](_0x4533f3)[_0xafba('0x1a')](function(_0x590994){return _0x590994;});}return null;};}function removeEntity(_0x50304f){return function(_0x4481e0){if(_0x4481e0){return _0x4481e0['destroy']()[_0xafba('0x1a')](function(){_0x50304f[_0xafba('0x11')](0xcc)[_0xafba('0x10')]();});}};}function handleEntityNotFound(_0x4f7669){return function(_0x494b58){if(!_0x494b58){_0x4f7669[_0xafba('0xf')](0x194);}return _0x494b58;};}function handleError(_0x96c974,_0x3bd1bb){_0x3bd1bb=_0x3bd1bb||0x1f4;return function(_0x11fd1e){logger[_0xafba('0x1b')](_0x11fd1e[_0xafba('0x1c')]);if(_0x11fd1e['name']){delete _0x11fd1e[_0xafba('0x1d')];}_0x96c974[_0xafba('0x11')](_0x3bd1bb)[_0xafba('0x1e')](_0x11fd1e);};}exports[_0xafba('0x1f')]=function(_0x304ab8,_0x12783e){var _0x4d4838={};var _0x24c39c=_[_0xafba('0x20')](db[_0xafba('0x21')][_0xafba('0x22')],function(_0x12a492){return{'name':_0x12a492[_0xafba('0x23')],'type':_0x12a492[_0xafba('0x24')]['key']};});_0x4d4838=qs[_0xafba('0x25')](_0x24c39c,_0x304ab8);return interaction[_0xafba('0x26')](_0xafba('0x27'),_0x304ab8[_0xafba('0x28')],_0x304ab8[_0xafba('0x29')],_0x4d4838,_0x24c39c)[_0xafba('0x1a')](respondWithFilteredResult(_0x12783e,_0x4d4838))['catch'](handleError(_0x12783e,null));};exports['show']=function(_0x19012b,_0x2d7e9d){var _0x406296={'raw':![],'where':{'id':_0x19012b[_0xafba('0x2a')]['id']}},_0xd6fe59={};_0xd6fe59['model']=_[_0xafba('0x2b')](db[_0xafba('0x21')][_0xafba('0x22')]);_0xd6fe59['query']=_[_0xafba('0x2b')](_0x19012b[_0xafba('0x28')]);_0xd6fe59[_0xafba('0x2c')]=_['intersection'](_0xd6fe59[_0xafba('0x2d')],_0xd6fe59[_0xafba('0x28')]);_0x406296[_0xafba('0x2e')]=_[_0xafba('0x2f')](_0xd6fe59[_0xafba('0x2d')],qs['fields'](_0x19012b[_0xafba('0x28')][_0xafba('0x30')]));_0x406296[_0xafba('0x2e')]=_0x406296[_0xafba('0x2e')][_0xafba('0x31')]?_0x406296[_0xafba('0x2e')]:_0xd6fe59[_0xafba('0x2d')];if(_0x19012b[_0xafba('0x28')][_0xafba('0x32')]){_0x406296[_0xafba('0x33')]=[{'all':!![]}];}_0x406296=_[_0xafba('0x34')]({},_0x406296,_0x19012b[_0xafba('0x35')]);return db[_0xafba('0x21')][_0xafba('0x36')](_0x406296)[_0xafba('0x1a')](handleEntityNotFound(_0x2d7e9d,null))[_0xafba('0x1a')](respondWithResult(_0x2d7e9d,null))[_0xafba('0x37')](handleError(_0x2d7e9d,null));};exports['create']=function(_0x31ef5c,_0x3dd757){return db[_0xafba('0x21')][_0xafba('0x38')](_0x31ef5c[_0xafba('0x39')],{})['then'](respondWithResult(_0x3dd757,0xc9))[_0xafba('0x37')](handleError(_0x3dd757,null));};exports['update']=function(_0x52ffac,_0xbb48ba){if(_0x52ffac[_0xafba('0x39')]['id']){delete _0x52ffac[_0xafba('0x39')]['id'];}return db['MailInteraction'][_0xafba('0x36')]({'where':{'id':_0x52ffac[_0xafba('0x2a')]['id']}})[_0xafba('0x1a')](handleEntityNotFound(_0xbb48ba,null))[_0xafba('0x1a')](saveUpdates(_0x52ffac['body'],null))[_0xafba('0x1a')](respondWithResult(_0xbb48ba,null))[_0xafba('0x37')](handleError(_0xbb48ba,null));};exports[_0xafba('0x3a')]=function(_0x1ee5b8,_0x8aff40){return db['MailInteraction'][_0xafba('0x36')]({'where':{'id':_0x1ee5b8['params']['id']}})[_0xafba('0x1a')](handleEntityNotFound(_0x8aff40,null))[_0xafba('0x1a')](removeEntity(_0x8aff40,null))[_0xafba('0x37')](handleError(_0x8aff40,null));};exports[_0xafba('0x3b')]=function(_0x3ab1d7,_0x3dcd6a){return db['MailInteraction'][_0xafba('0x3b')]()[_0xafba('0x1a')](respondWithResult(_0x3dcd6a,null))[_0xafba('0x37')](handleError(_0x3dcd6a,null));};exports['addMessage']=function(_0x595be5,_0x3bb4dc){return db['MailMessage']['find']({'where':{'id':_0x595be5[_0xafba('0x2a')]['id']}})[_0xafba('0x1a')](handleEntityNotFound(_0x3bb4dc,null))['then'](function(_0x58ef95){if(_0x58ef95){return _0x58ef95[_0xafba('0x3c')](_0x595be5[_0xafba('0x39')][_0xafba('0x3d')],_[_0xafba('0x3e')](_0x595be5[_0xafba('0x39')],[_0xafba('0x3d'),'id'])||{});}})[_0xafba('0x1a')](respondWithResult(_0x3bb4dc,null))['catch'](handleError(_0x3bb4dc,null));};exports[_0xafba('0x3f')]=function(_0xf615f2,_0x4fe707){var _0x5777e4={'raw':![],'where':{}};var _0x5e4acf={};var _0x1eeef3={'count':0x0,'rows':[]};return db[_0xafba('0x21')][_0xafba('0x40')]({'where':{'id':_0xf615f2[_0xafba('0x2a')]['id']}})[_0xafba('0x1a')](handleEntityNotFound(_0x4fe707,null))[_0xafba('0x1a')](function(_0x1c4e90){if(_0x1c4e90){_0x5e4acf[_0xafba('0x2d')]=_[_0xafba('0x2b')](db[_0xafba('0x41')][_0xafba('0x22')]);_0x5e4acf['query']=_[_0xafba('0x2b')](_0xf615f2[_0xafba('0x28')]);_0x5e4acf[_0xafba('0x2c')]=_['intersection'](_0x5e4acf[_0xafba('0x2d')],_0x5e4acf[_0xafba('0x28')]);_0x5777e4[_0xafba('0x2e')]=_[_0xafba('0x2f')](_0x5e4acf[_0xafba('0x2d')],qs['fields'](_0xf615f2[_0xafba('0x28')]['fields']));_0x5777e4[_0xafba('0x2e')]=_0x5777e4[_0xafba('0x2e')]['length']?_0x5777e4[_0xafba('0x2e')]:_0x5e4acf['model'];if(!_0xf615f2[_0xafba('0x28')][_0xafba('0x42')]('nolimit')){_0x5777e4[_0xafba('0x16')]=qs['limit'](_0xf615f2['query'][_0xafba('0x16')]);_0x5777e4[_0xafba('0x15')]=qs[_0xafba('0x15')](_0xf615f2['query'][_0xafba('0x15')]);}_0x5777e4['order']=qs[_0xafba('0x43')](_0xf615f2[_0xafba('0x28')][_0xafba('0x43')]);_0x5777e4[_0xafba('0x44')]=qs[_0xafba('0x2c')](_[_0xafba('0x45')](_0xf615f2[_0xafba('0x28')],_0x5e4acf[_0xafba('0x2c')]));_0x5777e4['where'][_0xafba('0x46')]=_0x1c4e90['id'];if(_0xf615f2[_0xafba('0x28')][_0xafba('0x47')]){_0x5777e4[_0xafba('0x44')]=_[_0xafba('0x34')](_0x5777e4['where'],{'$or':_[_0xafba('0x20')](_0x5777e4[_0xafba('0x2e')],function(_0x52cc58){var _0xee790b={};_0xee790b[_0x52cc58]={'$like':'%'+_0xf615f2[_0xafba('0x28')]['filter']+'%'};return _0xee790b;})});}if(_0xf615f2[_0xafba('0x28')][_0xafba('0x48')]){var _0x4adfb8=_0xf615f2[_0xafba('0x28')][_0xafba('0x48')]['split'](',');var _0xf7512d={};_0xf7512d[_0x4adfb8[0x0]]={'$gte':moment(_0x4adfb8[0x1])['format'](_0xafba('0x49'))};_0x5777e4[_0xafba('0x44')]=_[_0xafba('0x34')](_0x5777e4[_0xafba('0x44')],_0xf7512d);}_0x5777e4=_['merge']({},_0x5777e4,_0xf615f2[_0xafba('0x35')]);return db[_0xafba('0x41')][_0xafba('0x14')]({'where':_0x5777e4['where']})[_0xafba('0x1a')](function(_0x47dddc){_0x1eeef3[_0xafba('0x14')]=_0x47dddc;if(_0xf615f2[_0xafba('0x28')]['includeAll']){_0x5777e4[_0xafba('0x33')]=[{'all':!![]}];}return db[_0xafba('0x41')][_0xafba('0x26')](_0x5777e4);})[_0xafba('0x1a')](function(_0x31daab){if(_0xf615f2[_0xafba('0x28')]['inlineCss']==='true'){for(var _0xe33761=0x0;_0xe33761<_0x31daab['length'];_0xe33761++){_0x31daab[_0xe33761][_0xafba('0x39')]=juice(_0x31daab[_0xe33761]['body']);}}_0x1eeef3[_0xafba('0x4a')]=_0x31daab;return _0x1eeef3;});}})['then'](respondWithFilteredResult(_0x4fe707,_0x5777e4))[_0xafba('0x37')](handleError(_0x4fe707,null));};exports[_0xafba('0x4b')]=function(_0x372731,_0x339028){return db[_0xafba('0x21')][_0xafba('0x36')]({'where':{'id':_0x372731[_0xafba('0x2a')]['id']}})['then'](handleEntityNotFound(_0x339028,null))[_0xafba('0x1a')](function(_0x25b13b){if(_0x25b13b){return _0x25b13b[_0xafba('0x4c')](_0x372731['body'][_0xafba('0x3d')],_[_0xafba('0x3e')](_0x372731[_0xafba('0x39')],['ids','id'])||{})[_0xafba('0x4d')](function(){return db[_0xafba('0x4e')][_0xafba('0x26')]({'attributes':['id',_0xafba('0x1d'),_0xafba('0x4f')],'where':{'id':_0x372731[_0xafba('0x39')]['ids']}});})[_0xafba('0x1a')](function(_0x3e2d59){socket[_0xafba('0x50')]('mailInteractionTags:save',{'id':Number(_0x372731[_0xafba('0x2a')]['id']),'tags':_0x3e2d59||[]});return{'id':Number(_0x372731[_0xafba('0x2a')]['id']),'tags':_0x3e2d59||[]};});}})[_0xafba('0x1a')](respondWithResult(_0x339028,null))['catch'](handleError(_0x339028,null));};exports[_0xafba('0x51')]=function(_0x3e228e,_0xe48230){return db[_0xafba('0x21')]['find']({'where':{'id':_0x3e228e[_0xafba('0x2a')]['id']}})[_0xafba('0x1a')](handleEntityNotFound(_0xe48230,null))['then'](function(_0x2a4da4){if(_0x2a4da4){return _0x2a4da4[_0xafba('0x51')](_0x3e228e[_0xafba('0x28')][_0xafba('0x3d')]);}})[_0xafba('0x1a')](respondWithStatusCode(_0xe48230,null))[_0xafba('0x37')](handleError(_0xe48230,null));};exports[_0xafba('0x52')]=function(_0x394736,_0x274f66){var _0x18db10=moment()[_0xafba('0x53')]()[_0xafba('0x54')]();var _0x2a60ae=path[_0xafba('0x55')](config[_0xafba('0x56')],_0xafba('0x57'),'files','tmp');var _0x53c1fe=path['join'](config[_0xafba('0x56')],'server',_0xafba('0x58'),_0xafba('0x59'));var _0x4a7d5b=path['join'](_0x2a60ae,_0x18db10);var _0x5cbf70=util['format']('transcript-%d-%s.zip',_0x394736['params']['id'],_0x18db10);var _0x6b2c15=path['join'](_0x2a60ae,_0x5cbf70);var _0x47f2b3=[];if(_0x394736[_0xafba('0x28')][_0xafba('0x59')]){_0x47f2b3[_0xafba('0x5a')]({'model':db[_0xafba('0x5b')],'as':_0xafba('0x5c'),'raw':!![]});}var _0x28faae=[{'model':db[_0xafba('0x41')],'as':_0xafba('0x5d'),'attributes':['id',_0xafba('0x39'),_0xafba('0x5e'),'to','cc',_0xafba('0x5f'),_0xafba('0x60'),_0xafba('0x61')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x47f2b3}];return db[_0xafba('0x21')][_0xafba('0x36')]({'where':{'id':_0x394736['params']['id']},'include':_0x28faae})[_0xafba('0x1a')](handleEntityNotFound(_0x274f66,null))[_0xafba('0x1a')](function(_0x1d7df4){if(_0x1d7df4&&_0x1d7df4[_0xafba('0x5d')]){var _0x3b0182=_0x1d7df4[_0xafba('0x62')]({'plain':!![]});fs[_0xafba('0x63')](_0x4a7d5b);return BPromise[_0xafba('0x64')](_0x3b0182[_0xafba('0x5d')],function(_0x19c009,_0x4bee00){var _0x559106={'from':_0x19c009[_0xafba('0x5e')],'to':_0x19c009['to']||_0xafba('0x65'),'subject':_0x19c009[_0xafba('0x60')],'html':htmlEntities[_0xafba('0x66')](_0x19c009[_0xafba('0x39')]),'headers':{'Date':moment(_0x19c009[_0xafba('0x61')])[_0xafba('0x67')](_0xafba('0x68'))},'attachments':[]};if(_0x19c009['cc']){_0x559106['headers']['Cc']=_0x19c009['cc'];}if(_0x19c009['bcc']){_0x559106[_0xafba('0x69')][_0xafba('0x6a')]=_0x19c009[_0xafba('0x5f')];}return new BPromise(function(_0x386948,_0x4e6e75){if(_0x19c009['Attachments']){for(var _0x4559b3=0x0;_0x4559b3<_0x19c009[_0xafba('0x5c')]['length'];_0x4559b3++){var _0x485ab4=_0x19c009[_0xafba('0x5c')][_0x4559b3];var _0x5d5a66=path[_0xafba('0x55')](_0x53c1fe,_0x485ab4[_0xafba('0x6b')]);if(fs['existsSync'](_0x5d5a66)){_0x559106[_0xafba('0x59')][_0xafba('0x5a')]({'name':_0x485ab4[_0xafba('0x1d')],'contentType':_0x485ab4['type'],'data':fs[_0xafba('0x6c')](_0x5d5a66)});}}}emlformat[_0xafba('0x6d')](_0x559106,function(_0x1f977d,_0x260e15){if(_0x1f977d)return _0x4e6e75(_0x1f977d);fs[_0xafba('0x6e')](path[_0xafba('0x55')](_0x4a7d5b,util[_0xafba('0x67')](_0xafba('0x6f'),_0x4bee00)),_0x260e15);return _0x386948(_0x260e15);});});})[_0xafba('0x1a')](function(){return new BPromise(function(_0x192f49,_0x4946ff){zipdir(_0x4a7d5b,{'saveTo':_0x6b2c15},function(_0x452e40,_0x524cdb){if(_0x452e40)return _0x4946ff(_0x452e40);return _0x192f49(_0x524cdb);});})[_0xafba('0x1a')](function(){return new BPromise(function(_0x4670ba,_0x22c756){rimraf(_0x4a7d5b,function(_0xbcbd17){if(_0xbcbd17)_0x22c756(_0xbcbd17);return _0x4670ba();});});})[_0xafba('0x1a')](function(){return _0x274f66['download'](_0x6b2c15,_0x5cbf70,function(_0x526802){if(!_0x526802)fs[_0xafba('0x70')](_0x6b2c15);});});});}else{return _0x274f66[_0xafba('0xf')](0xc8);}})[_0xafba('0x37')](handleError(_0x274f66,null));};
\ No newline at end of file