Built motion from commit 639a1a7f.|2.6.19
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 1cd6758..0cc4303 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb1b5=['util','lodash','juice','ioredis','../../components/interaction/service','../../config/logger','api','../../config/environment','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','json','offset','undefined','limit','count','Content-Range','update','then','error','stack','name','map','MailInteraction','rawAttributes','type','getOptions','findAll','mail','query','catch','show','model','keys','filters','intersection','fields','attributes','length','includeAll','include','merge','options','find','create','body','params','destroy','describe','addMessage','ids','omit','getMessages','findOne','MailMessage','hasOwnProperty','nolimit','sort','MailInteractionId','filter','where','$gte','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','addTags','setTags','spread','Tag','color','emit','mailInteractionTags:save','removeTags','download','unix','join','server','tmp','root','attachments','transcript-%d-%s.zip','Attachments','from','bcc','createdAt','get','mkdirSync','each','missing.recipient@your.company.com','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','Bcc','basename','existsSync','push','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','rimraf','moment','bluebird'];(function(_0x461abf,_0x29be58){var _0x1d400d=function(_0x3902c3){while(--_0x3902c3){_0x461abf['push'](_0x461abf['shift']());}};_0x1d400d(++_0x29be58);}(_0xb1b5,0x149));var _0x5b1b=function(_0x4ebcb1,_0x2db025){_0x4ebcb1=_0x4ebcb1-0x0;var _0x2f314b=_0xb1b5[_0x4ebcb1];return _0x2f314b;};'use strict';var emlformat=require(_0x5b1b('0x0'));var rimraf=require(_0x5b1b('0x1'));var zipdir=require('zip-dir');var moment=require(_0x5b1b('0x2'));var BPromise=require(_0x5b1b('0x3'));var util=require(_0x5b1b('0x4'));var path=require('path');var fs=require('fs');var _=require(_0x5b1b('0x5'));var juice=require(_0x5b1b('0x6'));var Redis=require(_0x5b1b('0x7'));var interaction=require(_0x5b1b('0x8'));var qs=require('../../components/parsers/qs');var logger=require(_0x5b1b('0x9'))(_0x5b1b('0xa'));var config=require(_0x5b1b('0xb'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0x5b1b('0xc'));config[_0x5b1b('0xd')]=_[_0x5b1b('0xe')](config[_0x5b1b('0xd')],{'host':_0x5b1b('0xf'),'port':0x18eb});var socket=require(_0x5b1b('0x10'))(new Redis(config[_0x5b1b('0xd')]));require(_0x5b1b('0x11'))[_0x5b1b('0x12')](socket);function respondWithStatusCode(_0x22ff40,_0x10bee0){_0x10bee0=_0x10bee0||0xcc;return function(_0x2015ed){if(_0x2015ed){return _0x22ff40[_0x5b1b('0x13')](_0x10bee0);}return _0x22ff40[_0x5b1b('0x14')](_0x10bee0)['end']();};}function respondWithResult(_0x2c7dae,_0x4e83dc){_0x4e83dc=_0x4e83dc||0xc8;return function(_0x4a450a){if(_0x4a450a){return _0x2c7dae[_0x5b1b('0x14')](_0x4e83dc)[_0x5b1b('0x15')](_0x4a450a);}};}function respondWithFilteredResult(_0x23f611,_0x529fdf){return function(_0x192a5d){if(_0x192a5d){var _0x62deb0=typeof _0x529fdf[_0x5b1b('0x16')]===_0x5b1b('0x17')&&typeof _0x529fdf[_0x5b1b('0x18')]===_0x5b1b('0x17');var _0x496094=_0x192a5d[_0x5b1b('0x19')];var _0x2f996d=_0x62deb0?0x0:_0x529fdf[_0x5b1b('0x16')];var _0x36167c=_0x62deb0?_0x192a5d[_0x5b1b('0x19')]:_0x529fdf[_0x5b1b('0x16')]+_0x529fdf[_0x5b1b('0x18')];var _0x202771;if(_0x36167c>=_0x496094){_0x36167c=_0x496094;_0x202771=0xc8;}else{_0x202771=0xce;}_0x23f611[_0x5b1b('0x14')](_0x202771);return _0x23f611['set'](_0x5b1b('0x1a'),_0x2f996d+'-'+_0x36167c+'/'+_0x496094)[_0x5b1b('0x15')](_0x192a5d);}return null;};}function saveUpdates(_0x421892){return function(_0x2bdeaf){if(_0x2bdeaf){return _0x2bdeaf[_0x5b1b('0x1b')](_0x421892)[_0x5b1b('0x1c')](function(_0x53207c){return _0x53207c;});}return null;};}function removeEntity(_0x325bfe){return function(_0x37772e){if(_0x37772e){return _0x37772e['destroy']()[_0x5b1b('0x1c')](function(){_0x325bfe[_0x5b1b('0x14')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4306ea){return function(_0x455ab1){if(!_0x455ab1){_0x4306ea[_0x5b1b('0x13')](0x194);}return _0x455ab1;};}function handleError(_0x328379,_0x1a1ff7){_0x1a1ff7=_0x1a1ff7||0x1f4;return function(_0xc3b9f2){logger[_0x5b1b('0x1d')](_0xc3b9f2[_0x5b1b('0x1e')]);if(_0xc3b9f2['name']){delete _0xc3b9f2[_0x5b1b('0x1f')];}_0x328379[_0x5b1b('0x14')](_0x1a1ff7)['send'](_0xc3b9f2);};}exports['index']=function(_0x14eccb,_0xc29d81){var _0x4a0a5d={};var _0x540247=_[_0x5b1b('0x20')](db[_0x5b1b('0x21')][_0x5b1b('0x22')],function(_0x2fc75f){return{'name':_0x2fc75f['fieldName'],'type':_0x2fc75f[_0x5b1b('0x23')]['key']};});_0x4a0a5d=qs[_0x5b1b('0x24')](_0x540247,_0x14eccb);return interaction[_0x5b1b('0x25')](_0x5b1b('0x26'),_0x14eccb[_0x5b1b('0x27')],_0x14eccb['user'],_0x4a0a5d,_0x540247)['then'](respondWithFilteredResult(_0xc29d81,_0x4a0a5d))[_0x5b1b('0x28')](handleError(_0xc29d81,null));};exports[_0x5b1b('0x29')]=function(_0x50bc8a,_0x4f2f7e){var _0x213e0f={'raw':![],'where':{'id':_0x50bc8a['params']['id']}},_0x30f5df={};_0x30f5df[_0x5b1b('0x2a')]=_[_0x5b1b('0x2b')](db[_0x5b1b('0x21')][_0x5b1b('0x22')]);_0x30f5df[_0x5b1b('0x27')]=_[_0x5b1b('0x2b')](_0x50bc8a['query']);_0x30f5df[_0x5b1b('0x2c')]=_['intersection'](_0x30f5df['model'],_0x30f5df[_0x5b1b('0x27')]);_0x213e0f['attributes']=_[_0x5b1b('0x2d')](_0x30f5df['model'],qs['fields'](_0x50bc8a[_0x5b1b('0x27')][_0x5b1b('0x2e')]));_0x213e0f[_0x5b1b('0x2f')]=_0x213e0f[_0x5b1b('0x2f')][_0x5b1b('0x30')]?_0x213e0f[_0x5b1b('0x2f')]:_0x30f5df[_0x5b1b('0x2a')];if(_0x50bc8a[_0x5b1b('0x27')][_0x5b1b('0x31')]){_0x213e0f[_0x5b1b('0x32')]=[{'all':!![]}];}_0x213e0f=_[_0x5b1b('0x33')]({},_0x213e0f,_0x50bc8a[_0x5b1b('0x34')]);return db[_0x5b1b('0x21')][_0x5b1b('0x35')](_0x213e0f)[_0x5b1b('0x1c')](handleEntityNotFound(_0x4f2f7e,null))[_0x5b1b('0x1c')](respondWithResult(_0x4f2f7e,null))['catch'](handleError(_0x4f2f7e,null));};exports[_0x5b1b('0x36')]=function(_0x2840d7,_0x35866b){return db[_0x5b1b('0x21')][_0x5b1b('0x36')](_0x2840d7[_0x5b1b('0x37')],{})[_0x5b1b('0x1c')](respondWithResult(_0x35866b,0xc9))[_0x5b1b('0x28')](handleError(_0x35866b,null));};exports[_0x5b1b('0x1b')]=function(_0x3955ac,_0x5a120f){if(_0x3955ac[_0x5b1b('0x37')]['id']){delete _0x3955ac[_0x5b1b('0x37')]['id'];}return db['MailInteraction'][_0x5b1b('0x35')]({'where':{'id':_0x3955ac[_0x5b1b('0x38')]['id']}})['then'](handleEntityNotFound(_0x5a120f,null))['then'](saveUpdates(_0x3955ac[_0x5b1b('0x37')],null))['then'](respondWithResult(_0x5a120f,null))[_0x5b1b('0x28')](handleError(_0x5a120f,null));};exports[_0x5b1b('0x39')]=function(_0x33fe29,_0x546c2e){return db[_0x5b1b('0x21')]['find']({'where':{'id':_0x33fe29[_0x5b1b('0x38')]['id']}})[_0x5b1b('0x1c')](handleEntityNotFound(_0x546c2e,null))[_0x5b1b('0x1c')](removeEntity(_0x546c2e,null))['catch'](handleError(_0x546c2e,null));};exports[_0x5b1b('0x3a')]=function(_0x29d365,_0x40a4d9){return db[_0x5b1b('0x21')]['describe']()[_0x5b1b('0x1c')](respondWithResult(_0x40a4d9,null))[_0x5b1b('0x28')](handleError(_0x40a4d9,null));};exports[_0x5b1b('0x3b')]=function(_0x31d2e7,_0x9a47db){return db['MailMessage'][_0x5b1b('0x35')]({'where':{'id':_0x31d2e7[_0x5b1b('0x38')]['id']}})[_0x5b1b('0x1c')](handleEntityNotFound(_0x9a47db,null))[_0x5b1b('0x1c')](function(_0x167f68){if(_0x167f68){return _0x167f68[_0x5b1b('0x3b')](_0x31d2e7[_0x5b1b('0x37')][_0x5b1b('0x3c')],_[_0x5b1b('0x3d')](_0x31d2e7[_0x5b1b('0x37')],['ids','id'])||{});}})['then'](respondWithResult(_0x9a47db,null))[_0x5b1b('0x28')](handleError(_0x9a47db,null));};exports[_0x5b1b('0x3e')]=function(_0x145acf,_0x1f3baf){var _0x25cfe2={'raw':![],'where':{}};var _0x5008c0={};var _0x5b47a3={'count':0x0,'rows':[]};return db[_0x5b1b('0x21')][_0x5b1b('0x3f')]({'where':{'id':_0x145acf[_0x5b1b('0x38')]['id']}})[_0x5b1b('0x1c')](handleEntityNotFound(_0x1f3baf,null))[_0x5b1b('0x1c')](function(_0x220e94){if(_0x220e94){_0x5008c0[_0x5b1b('0x2a')]=_[_0x5b1b('0x2b')](db[_0x5b1b('0x40')]['rawAttributes']);_0x5008c0[_0x5b1b('0x27')]=_[_0x5b1b('0x2b')](_0x145acf['query']);_0x5008c0[_0x5b1b('0x2c')]=_[_0x5b1b('0x2d')](_0x5008c0[_0x5b1b('0x2a')],_0x5008c0['query']);_0x25cfe2[_0x5b1b('0x2f')]=_['intersection'](_0x5008c0[_0x5b1b('0x2a')],qs['fields'](_0x145acf[_0x5b1b('0x27')]['fields']));_0x25cfe2[_0x5b1b('0x2f')]=_0x25cfe2[_0x5b1b('0x2f')]['length']?_0x25cfe2[_0x5b1b('0x2f')]:_0x5008c0[_0x5b1b('0x2a')];if(!_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x41')](_0x5b1b('0x42'))){_0x25cfe2[_0x5b1b('0x18')]=qs[_0x5b1b('0x18')](_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x18')]);_0x25cfe2[_0x5b1b('0x16')]=qs[_0x5b1b('0x16')](_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x16')]);}_0x25cfe2['order']=qs[_0x5b1b('0x43')](_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x43')]);_0x25cfe2['where']=qs[_0x5b1b('0x2c')](_['pick'](_0x145acf[_0x5b1b('0x27')],_0x5008c0[_0x5b1b('0x2c')]));_0x25cfe2['where'][_0x5b1b('0x44')]=_0x220e94['id'];if(_0x145acf['query'][_0x5b1b('0x45')]){_0x25cfe2[_0x5b1b('0x46')]=_['merge'](_0x25cfe2[_0x5b1b('0x46')],{'$or':_[_0x5b1b('0x20')](_0x25cfe2[_0x5b1b('0x2f')],function(_0x1efbf1){var _0x2ebda8={};_0x2ebda8[_0x1efbf1]={'$like':'%'+_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x45')]+'%'};return _0x2ebda8;})});}if(_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x47')]){var _0x59df2e=_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x47')]['split'](',');var _0x15d33e={};_0x15d33e[_0x59df2e[0x0]]={'$gte':moment(_0x59df2e[0x1])[_0x5b1b('0x48')](_0x5b1b('0x49'))};_0x25cfe2['where']=_[_0x5b1b('0x33')](_0x25cfe2['where'],_0x15d33e);}_0x25cfe2=_[_0x5b1b('0x33')]({},_0x25cfe2,_0x145acf[_0x5b1b('0x34')]);return db[_0x5b1b('0x40')][_0x5b1b('0x19')]({'where':_0x25cfe2['where']})[_0x5b1b('0x1c')](function(_0x382733){_0x5b47a3[_0x5b1b('0x19')]=_0x382733;if(_0x145acf[_0x5b1b('0x27')]['includeAll']){_0x25cfe2[_0x5b1b('0x32')]=[{'all':!![]}];}return db[_0x5b1b('0x40')][_0x5b1b('0x25')](_0x25cfe2);})[_0x5b1b('0x1c')](function(_0x14085a){if(_0x145acf[_0x5b1b('0x27')][_0x5b1b('0x4a')]==='true'){for(var _0x41172e=0x0;_0x41172e<_0x14085a[_0x5b1b('0x30')];_0x41172e++){_0x14085a[_0x41172e][_0x5b1b('0x37')]=juice(_0x14085a[_0x41172e][_0x5b1b('0x37')]);}}_0x5b47a3['rows']=_0x14085a;return _0x5b47a3;});}})[_0x5b1b('0x1c')](respondWithFilteredResult(_0x1f3baf,_0x25cfe2))[_0x5b1b('0x28')](handleError(_0x1f3baf,null));};exports[_0x5b1b('0x4b')]=function(_0x348928,_0x1756f7){return db[_0x5b1b('0x21')]['find']({'where':{'id':_0x348928['params']['id']}})[_0x5b1b('0x1c')](handleEntityNotFound(_0x1756f7,null))[_0x5b1b('0x1c')](function(_0x2722ba){if(_0x2722ba){return _0x2722ba[_0x5b1b('0x4c')](_0x348928[_0x5b1b('0x37')][_0x5b1b('0x3c')],_[_0x5b1b('0x3d')](_0x348928[_0x5b1b('0x37')],[_0x5b1b('0x3c'),'id'])||{})[_0x5b1b('0x4d')](function(){return db[_0x5b1b('0x4e')][_0x5b1b('0x25')]({'attributes':['id',_0x5b1b('0x1f'),_0x5b1b('0x4f')],'where':{'id':_0x348928['body']['ids']}});})[_0x5b1b('0x1c')](function(_0x2881a9){socket[_0x5b1b('0x50')](_0x5b1b('0x51'),{'id':Number(_0x348928[_0x5b1b('0x38')]['id']),'tags':_0x2881a9||[]});return{'id':Number(_0x348928['params']['id']),'tags':_0x2881a9||[]};});}})[_0x5b1b('0x1c')](respondWithResult(_0x1756f7,null))[_0x5b1b('0x28')](handleError(_0x1756f7,null));};exports[_0x5b1b('0x52')]=function(_0xe8fca1,_0x415048){return db[_0x5b1b('0x21')]['find']({'where':{'id':_0xe8fca1[_0x5b1b('0x38')]['id']}})[_0x5b1b('0x1c')](handleEntityNotFound(_0x415048,null))['then'](function(_0x2e21d4){if(_0x2e21d4){return _0x2e21d4[_0x5b1b('0x52')](_0xe8fca1[_0x5b1b('0x27')][_0x5b1b('0x3c')]);}})[_0x5b1b('0x1c')](respondWithStatusCode(_0x415048,null))[_0x5b1b('0x28')](handleError(_0x415048,null));};exports[_0x5b1b('0x53')]=function(_0x3d1763,_0x3faebe){var _0x339635=moment()[_0x5b1b('0x54')]()['toString']();var _0x38fa4f=path[_0x5b1b('0x55')](config['root'],_0x5b1b('0x56'),'files',_0x5b1b('0x57'));var _0x2cc651=path['join'](config[_0x5b1b('0x58')],_0x5b1b('0x56'),'files',_0x5b1b('0x59'));var _0x2aa1a4=path[_0x5b1b('0x55')](_0x38fa4f,_0x339635);var _0x10aea4=util[_0x5b1b('0x48')](_0x5b1b('0x5a'),_0x3d1763[_0x5b1b('0x38')]['id'],_0x339635);var _0x32daf7=path[_0x5b1b('0x55')](_0x38fa4f,_0x10aea4);var _0x12bcd5=[];if(_0x3d1763[_0x5b1b('0x27')][_0x5b1b('0x59')]){_0x12bcd5['push']({'model':db['Attachment'],'as':_0x5b1b('0x5b'),'raw':!![]});}var _0x31291e=[{'model':db[_0x5b1b('0x40')],'as':'Messages','attributes':['id',_0x5b1b('0x37'),_0x5b1b('0x5c'),'to','cc',_0x5b1b('0x5d'),'subject',_0x5b1b('0x5e')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x12bcd5}];return db['MailInteraction'][_0x5b1b('0x35')]({'where':{'id':_0x3d1763[_0x5b1b('0x38')]['id']},'include':_0x31291e})['then'](handleEntityNotFound(_0x3faebe,null))[_0x5b1b('0x1c')](function(_0x1a4f50){if(_0x1a4f50&&_0x1a4f50['Messages']){var _0x4087e9=_0x1a4f50[_0x5b1b('0x5f')]({'plain':!![]});fs[_0x5b1b('0x60')](_0x2aa1a4);return BPromise[_0x5b1b('0x61')](_0x4087e9['Messages'],function(_0x5a6207,_0x21eb51){var _0x1b42b0={'from':_0x5a6207[_0x5b1b('0x5c')],'to':_0x5a6207['to']||_0x5b1b('0x62'),'subject':_0x5a6207[_0x5b1b('0x63')],'html':htmlEntities[_0x5b1b('0x64')](_0x5a6207[_0x5b1b('0x37')]),'headers':{'Date':moment(_0x5a6207['createdAt'])[_0x5b1b('0x48')](_0x5b1b('0x65'))},'attachments':[]};if(_0x5a6207['cc']){_0x1b42b0['headers']['Cc']=_0x5a6207['cc'];}if(_0x5a6207[_0x5b1b('0x5d')]){_0x1b42b0['headers'][_0x5b1b('0x66')]=_0x5a6207[_0x5b1b('0x5d')];}return new BPromise(function(_0x146f30,_0x1510e8){if(_0x5a6207[_0x5b1b('0x5b')]){for(var _0x3d5beb=0x0;_0x3d5beb<_0x5a6207['Attachments']['length'];_0x3d5beb++){var _0x57da9a=_0x5a6207[_0x5b1b('0x5b')][_0x3d5beb];var _0x7ad329=path[_0x5b1b('0x55')](_0x2cc651,_0x57da9a[_0x5b1b('0x67')]);if(fs[_0x5b1b('0x68')](_0x7ad329)){_0x1b42b0[_0x5b1b('0x59')][_0x5b1b('0x69')]({'name':_0x57da9a[_0x5b1b('0x1f')],'contentType':_0x57da9a['type'],'data':fs[_0x5b1b('0x6a')](_0x7ad329)});}}}emlformat[_0x5b1b('0x6b')](_0x1b42b0,function(_0x11e0f2,_0x8f4080){if(_0x11e0f2)return _0x1510e8(_0x11e0f2);fs[_0x5b1b('0x6c')](path[_0x5b1b('0x55')](_0x2aa1a4,util[_0x5b1b('0x48')](_0x5b1b('0x6d'),_0x21eb51)),_0x8f4080);return _0x146f30(_0x8f4080);});});})[_0x5b1b('0x1c')](function(){return new BPromise(function(_0xc78f05,_0x2afc72){zipdir(_0x2aa1a4,{'saveTo':_0x32daf7},function(_0x11396c,_0x5c171c){if(_0x11396c)return _0x2afc72(_0x11396c);return _0xc78f05(_0x5c171c);});})['then'](function(){return new BPromise(function(_0x58e9bf,_0x3da584){rimraf(_0x2aa1a4,function(_0x1a76ae){if(_0x1a76ae)_0x3da584(_0x1a76ae);return _0x58e9bf();});});})[_0x5b1b('0x1c')](function(){return _0x3faebe[_0x5b1b('0x53')](_0x32daf7,_0x10aea4,function(_0x18d056){if(!_0x18d056)fs[_0x5b1b('0x6e')](_0x32daf7);});});});}else{return _0x3faebe[_0x5b1b('0x13')](0xc8);}})[_0x5b1b('0x28')](handleError(_0x3faebe,null));};
\ No newline at end of file
+var _0xeb92=['register','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','update','then','destroy','error','stack','name','send','map','rawAttributes','fieldName','type','findAll','mail','query','user','catch','params','model','keys','MailInteraction','intersection','attributes','fields','include','options','find','create','body','addMessage','MailMessage','ids','getMessages','hasOwnProperty','nolimit','order','sort','where','filters','pick','MailInteractionId','filter','merge','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','inlineCss','length','rows','addTags','setTags','omit','spread','Tag','color','emit','mailInteractionTags:save','removeTags','download','unix','join','root','server','tmp','files','attachments','transcript-%d-%s.zip','push','Attachments','Messages','from','bcc','subject','get','mkdirSync','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','moment','util','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','defaults','redis','socket.io-emitter','./mailInteraction.socket'];(function(_0xfcfc24,_0x48ca53){var _0x58f773=function(_0x263b5f){while(--_0x263b5f){_0xfcfc24['push'](_0xfcfc24['shift']());}};_0x58f773(++_0x48ca53);}(_0xeb92,0xd3));var _0x2eb9=function(_0x442000,_0x2e26c9){_0x442000=_0x442000-0x0;var _0x280b97=_0xeb92[_0x442000];return _0x280b97;};'use strict';var emlformat=require(_0x2eb9('0x0'));var rimraf=require(_0x2eb9('0x1'));var zipdir=require(_0x2eb9('0x2'));var moment=require(_0x2eb9('0x3'));var BPromise=require('bluebird');var util=require(_0x2eb9('0x4'));var path=require('path');var fs=require('fs');var _=require(_0x2eb9('0x5'));var juice=require(_0x2eb9('0x6'));var Redis=require(_0x2eb9('0x7'));var interaction=require('../../components/interaction/service');var qs=require(_0x2eb9('0x8'));var logger=require(_0x2eb9('0x9'))(_0x2eb9('0xa'));var config=require(_0x2eb9('0xb'));var db=require(_0x2eb9('0xc'))['db'];var htmlEntities=require('html-entities');config['redis']=_[_0x2eb9('0xd')](config[_0x2eb9('0xe')],{'host':'localhost','port':0x18eb});var socket=require(_0x2eb9('0xf'))(new Redis(config[_0x2eb9('0xe')]));require(_0x2eb9('0x10'))[_0x2eb9('0x11')](socket);function respondWithStatusCode(_0x4b6cc5,_0x382257){_0x382257=_0x382257||0xcc;return function(_0x2baf67){if(_0x2baf67){return _0x4b6cc5[_0x2eb9('0x12')](_0x382257);}return _0x4b6cc5['status'](_0x382257)[_0x2eb9('0x13')]();};}function respondWithResult(_0x2acce3,_0x19437d){_0x19437d=_0x19437d||0xc8;return function(_0x37cf39){if(_0x37cf39){return _0x2acce3[_0x2eb9('0x14')](_0x19437d)[_0x2eb9('0x15')](_0x37cf39);}};}function respondWithFilteredResult(_0x1c1719,_0x45427b){return function(_0x521c06){if(_0x521c06){var _0x4eedb8=typeof _0x45427b[_0x2eb9('0x16')]===_0x2eb9('0x17')&&typeof _0x45427b[_0x2eb9('0x18')]===_0x2eb9('0x17');var _0x1ec48b=_0x521c06[_0x2eb9('0x19')];var _0x182edc=_0x4eedb8?0x0:_0x45427b[_0x2eb9('0x16')];var _0x156e20=_0x4eedb8?_0x521c06['count']:_0x45427b['offset']+_0x45427b[_0x2eb9('0x18')];var _0x44bb96;if(_0x156e20>=_0x1ec48b){_0x156e20=_0x1ec48b;_0x44bb96=0xc8;}else{_0x44bb96=0xce;}_0x1c1719[_0x2eb9('0x14')](_0x44bb96);return _0x1c1719[_0x2eb9('0x1a')](_0x2eb9('0x1b'),_0x182edc+'-'+_0x156e20+'/'+_0x1ec48b)['json'](_0x521c06);}return null;};}function saveUpdates(_0x4860a0){return function(_0x53c774){if(_0x53c774){return _0x53c774[_0x2eb9('0x1c')](_0x4860a0)[_0x2eb9('0x1d')](function(_0x472492){return _0x472492;});}return null;};}function removeEntity(_0x48d8bc){return function(_0x11e7dd){if(_0x11e7dd){return _0x11e7dd[_0x2eb9('0x1e')]()[_0x2eb9('0x1d')](function(){_0x48d8bc[_0x2eb9('0x14')](0xcc)[_0x2eb9('0x13')]();});}};}function handleEntityNotFound(_0x2f51f6){return function(_0x32f88f){if(!_0x32f88f){_0x2f51f6[_0x2eb9('0x12')](0x194);}return _0x32f88f;};}function handleError(_0x1fef10,_0x4fad02){_0x4fad02=_0x4fad02||0x1f4;return function(_0x2d5468){logger[_0x2eb9('0x1f')](_0x2d5468[_0x2eb9('0x20')]);if(_0x2d5468['name']){delete _0x2d5468[_0x2eb9('0x21')];}_0x1fef10[_0x2eb9('0x14')](_0x4fad02)[_0x2eb9('0x22')](_0x2d5468);};}exports['index']=function(_0x44d435,_0x6c24ab){var _0x144b5c={};var _0x41b572=_[_0x2eb9('0x23')](db['MailInteraction'][_0x2eb9('0x24')],function(_0x373a27){return{'name':_0x373a27[_0x2eb9('0x25')],'type':_0x373a27[_0x2eb9('0x26')]['key']};});_0x144b5c=qs['getOptions'](_0x41b572,_0x44d435);return interaction[_0x2eb9('0x27')](_0x2eb9('0x28'),_0x44d435[_0x2eb9('0x29')],_0x44d435[_0x2eb9('0x2a')],_0x144b5c,_0x41b572)[_0x2eb9('0x1d')](respondWithFilteredResult(_0x6c24ab,_0x144b5c))[_0x2eb9('0x2b')](handleError(_0x6c24ab,null));};exports['show']=function(_0x165a36,_0x99ca3){var _0x4dc26d={'raw':![],'where':{'id':_0x165a36[_0x2eb9('0x2c')]['id']}},_0xb1e0cb={};_0xb1e0cb[_0x2eb9('0x2d')]=_[_0x2eb9('0x2e')](db[_0x2eb9('0x2f')][_0x2eb9('0x24')]);_0xb1e0cb[_0x2eb9('0x29')]=_['keys'](_0x165a36[_0x2eb9('0x29')]);_0xb1e0cb['filters']=_[_0x2eb9('0x30')](_0xb1e0cb[_0x2eb9('0x2d')],_0xb1e0cb[_0x2eb9('0x29')]);_0x4dc26d[_0x2eb9('0x31')]=_[_0x2eb9('0x30')](_0xb1e0cb['model'],qs[_0x2eb9('0x32')](_0x165a36[_0x2eb9('0x29')][_0x2eb9('0x32')]));_0x4dc26d[_0x2eb9('0x31')]=_0x4dc26d['attributes']['length']?_0x4dc26d[_0x2eb9('0x31')]:_0xb1e0cb[_0x2eb9('0x2d')];if(_0x165a36[_0x2eb9('0x29')]['includeAll']){_0x4dc26d[_0x2eb9('0x33')]=[{'all':!![]}];}_0x4dc26d=_['merge']({},_0x4dc26d,_0x165a36[_0x2eb9('0x34')]);return db['MailInteraction'][_0x2eb9('0x35')](_0x4dc26d)[_0x2eb9('0x1d')](handleEntityNotFound(_0x99ca3,null))['then'](respondWithResult(_0x99ca3,null))[_0x2eb9('0x2b')](handleError(_0x99ca3,null));};exports[_0x2eb9('0x36')]=function(_0x311d17,_0x1efea9){return db[_0x2eb9('0x2f')][_0x2eb9('0x36')](_0x311d17[_0x2eb9('0x37')],{})[_0x2eb9('0x1d')](respondWithResult(_0x1efea9,0xc9))['catch'](handleError(_0x1efea9,null));};exports[_0x2eb9('0x1c')]=function(_0x127210,_0x20df33){if(_0x127210[_0x2eb9('0x37')]['id']){delete _0x127210[_0x2eb9('0x37')]['id'];}return db['MailInteraction']['find']({'where':{'id':_0x127210[_0x2eb9('0x2c')]['id']}})[_0x2eb9('0x1d')](handleEntityNotFound(_0x20df33,null))[_0x2eb9('0x1d')](saveUpdates(_0x127210[_0x2eb9('0x37')],null))['then'](respondWithResult(_0x20df33,null))[_0x2eb9('0x2b')](handleError(_0x20df33,null));};exports[_0x2eb9('0x1e')]=function(_0x25751e,_0x2f49e7){return db[_0x2eb9('0x2f')]['find']({'where':{'id':_0x25751e['params']['id']}})['then'](handleEntityNotFound(_0x2f49e7,null))[_0x2eb9('0x1d')](removeEntity(_0x2f49e7,null))[_0x2eb9('0x2b')](handleError(_0x2f49e7,null));};exports['describe']=function(_0x3fb3b0,_0x1acaf8){return db[_0x2eb9('0x2f')]['describe']()[_0x2eb9('0x1d')](respondWithResult(_0x1acaf8,null))[_0x2eb9('0x2b')](handleError(_0x1acaf8,null));};exports[_0x2eb9('0x38')]=function(_0x3ec4bc,_0x392d1e){return db[_0x2eb9('0x39')][_0x2eb9('0x35')]({'where':{'id':_0x3ec4bc[_0x2eb9('0x2c')]['id']}})[_0x2eb9('0x1d')](handleEntityNotFound(_0x392d1e,null))[_0x2eb9('0x1d')](function(_0x3df5a7){if(_0x3df5a7){return _0x3df5a7[_0x2eb9('0x38')](_0x3ec4bc[_0x2eb9('0x37')][_0x2eb9('0x3a')],_['omit'](_0x3ec4bc[_0x2eb9('0x37')],[_0x2eb9('0x3a'),'id'])||{});}})['then'](respondWithResult(_0x392d1e,null))[_0x2eb9('0x2b')](handleError(_0x392d1e,null));};exports[_0x2eb9('0x3b')]=function(_0x3edbf9,_0x538dd3){var _0x5c779e={'raw':![],'where':{}};var _0x21eb3b={};var _0x2d503a={'count':0x0,'rows':[]};return db['MailInteraction']['findOne']({'where':{'id':_0x3edbf9['params']['id']}})[_0x2eb9('0x1d')](handleEntityNotFound(_0x538dd3,null))[_0x2eb9('0x1d')](function(_0x547a84){if(_0x547a84){_0x21eb3b[_0x2eb9('0x2d')]=_[_0x2eb9('0x2e')](db[_0x2eb9('0x39')][_0x2eb9('0x24')]);_0x21eb3b[_0x2eb9('0x29')]=_[_0x2eb9('0x2e')](_0x3edbf9['query']);_0x21eb3b['filters']=_[_0x2eb9('0x30')](_0x21eb3b[_0x2eb9('0x2d')],_0x21eb3b[_0x2eb9('0x29')]);_0x5c779e[_0x2eb9('0x31')]=_[_0x2eb9('0x30')](_0x21eb3b[_0x2eb9('0x2d')],qs[_0x2eb9('0x32')](_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x32')]));_0x5c779e['attributes']=_0x5c779e['attributes']['length']?_0x5c779e[_0x2eb9('0x31')]:_0x21eb3b['model'];if(!_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x3c')](_0x2eb9('0x3d'))){_0x5c779e[_0x2eb9('0x18')]=qs[_0x2eb9('0x18')](_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x18')]);_0x5c779e['offset']=qs['offset'](_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x16')]);}_0x5c779e[_0x2eb9('0x3e')]=qs[_0x2eb9('0x3f')](_0x3edbf9['query'][_0x2eb9('0x3f')]);_0x5c779e[_0x2eb9('0x40')]=qs[_0x2eb9('0x41')](_[_0x2eb9('0x42')](_0x3edbf9[_0x2eb9('0x29')],_0x21eb3b[_0x2eb9('0x41')]));_0x5c779e[_0x2eb9('0x40')][_0x2eb9('0x43')]=_0x547a84['id'];if(_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x44')]){_0x5c779e[_0x2eb9('0x40')]=_[_0x2eb9('0x45')](_0x5c779e['where'],{'$or':_[_0x2eb9('0x23')](_0x5c779e[_0x2eb9('0x31')],function(_0x264c7d){var _0x4d7766={};_0x4d7766[_0x264c7d]={'$like':'%'+_0x3edbf9['query']['filter']+'%'};return _0x4d7766;})});}if(_0x3edbf9['query']['$gte']){var _0x345883=_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x46')][_0x2eb9('0x47')](',');var _0x1f7cb1={};_0x1f7cb1[_0x345883[0x0]]={'$gte':moment(_0x345883[0x1])[_0x2eb9('0x48')](_0x2eb9('0x49'))};_0x5c779e[_0x2eb9('0x40')]=_['merge'](_0x5c779e[_0x2eb9('0x40')],_0x1f7cb1);}_0x5c779e=_['merge']({},_0x5c779e,_0x3edbf9['options']);return db[_0x2eb9('0x39')][_0x2eb9('0x19')]({'where':_0x5c779e[_0x2eb9('0x40')]})[_0x2eb9('0x1d')](function(_0x200be1){_0x2d503a[_0x2eb9('0x19')]=_0x200be1;if(_0x3edbf9[_0x2eb9('0x29')][_0x2eb9('0x4a')]){_0x5c779e[_0x2eb9('0x33')]=[{'all':!![]}];}return db['MailMessage'][_0x2eb9('0x27')](_0x5c779e);})[_0x2eb9('0x1d')](function(_0x3d4895){if(_0x3edbf9['query'][_0x2eb9('0x4b')]==='true'){for(var _0xf064c=0x0;_0xf064c<_0x3d4895[_0x2eb9('0x4c')];_0xf064c++){_0x3d4895[_0xf064c]['body']=juice(_0x3d4895[_0xf064c][_0x2eb9('0x37')]);}}_0x2d503a[_0x2eb9('0x4d')]=_0x3d4895;return _0x2d503a;});}})[_0x2eb9('0x1d')](respondWithFilteredResult(_0x538dd3,_0x5c779e))[_0x2eb9('0x2b')](handleError(_0x538dd3,null));};exports[_0x2eb9('0x4e')]=function(_0x2b7552,_0xa13d74){return db[_0x2eb9('0x2f')][_0x2eb9('0x35')]({'where':{'id':_0x2b7552[_0x2eb9('0x2c')]['id']}})['then'](handleEntityNotFound(_0xa13d74,null))[_0x2eb9('0x1d')](function(_0x478ba7){if(_0x478ba7){return _0x478ba7[_0x2eb9('0x4f')](_0x2b7552[_0x2eb9('0x37')][_0x2eb9('0x3a')],_[_0x2eb9('0x50')](_0x2b7552[_0x2eb9('0x37')],[_0x2eb9('0x3a'),'id'])||{})[_0x2eb9('0x51')](function(){return db[_0x2eb9('0x52')][_0x2eb9('0x27')]({'attributes':['id','name',_0x2eb9('0x53')],'where':{'id':_0x2b7552[_0x2eb9('0x37')][_0x2eb9('0x3a')]}});})[_0x2eb9('0x1d')](function(_0x40826d){socket[_0x2eb9('0x54')](_0x2eb9('0x55'),{'id':Number(_0x2b7552[_0x2eb9('0x2c')]['id']),'tags':_0x40826d||[]});return{'id':Number(_0x2b7552[_0x2eb9('0x2c')]['id']),'tags':_0x40826d||[]};});}})[_0x2eb9('0x1d')](respondWithResult(_0xa13d74,null))[_0x2eb9('0x2b')](handleError(_0xa13d74,null));};exports[_0x2eb9('0x56')]=function(_0x1387e3,_0x10fcba){return db[_0x2eb9('0x2f')][_0x2eb9('0x35')]({'where':{'id':_0x1387e3[_0x2eb9('0x2c')]['id']}})[_0x2eb9('0x1d')](handleEntityNotFound(_0x10fcba,null))[_0x2eb9('0x1d')](function(_0x2b68b0){if(_0x2b68b0){return _0x2b68b0[_0x2eb9('0x56')](_0x1387e3[_0x2eb9('0x29')][_0x2eb9('0x3a')]);}})[_0x2eb9('0x1d')](respondWithStatusCode(_0x10fcba,null))[_0x2eb9('0x2b')](handleError(_0x10fcba,null));};exports[_0x2eb9('0x57')]=function(_0xe5095a,_0x55a5ff){var _0x596a9e=moment()[_0x2eb9('0x58')]()['toString']();var _0x331209=path[_0x2eb9('0x59')](config[_0x2eb9('0x5a')],_0x2eb9('0x5b'),'files',_0x2eb9('0x5c'));var _0x469420=path[_0x2eb9('0x59')](config[_0x2eb9('0x5a')],'server',_0x2eb9('0x5d'),_0x2eb9('0x5e'));var _0x1c8c1b=path[_0x2eb9('0x59')](_0x331209,_0x596a9e);var _0x13f2c4=util[_0x2eb9('0x48')](_0x2eb9('0x5f'),_0xe5095a[_0x2eb9('0x2c')]['id'],_0x596a9e);var _0x5614df=path[_0x2eb9('0x59')](_0x331209,_0x13f2c4);var _0xe1cfa7=[];if(_0xe5095a['query'][_0x2eb9('0x5e')]){_0xe1cfa7[_0x2eb9('0x60')]({'model':db['Attachment'],'as':_0x2eb9('0x61'),'raw':!![]});}var _0x13ca64=[{'model':db['MailMessage'],'as':_0x2eb9('0x62'),'attributes':['id',_0x2eb9('0x37'),_0x2eb9('0x63'),'to','cc',_0x2eb9('0x64'),_0x2eb9('0x65'),'createdAt'],'where':{'secret':![]},'order':qs[_0x2eb9('0x3f')]('id'),'include':_0xe1cfa7}];return db[_0x2eb9('0x2f')]['find']({'where':{'id':_0xe5095a['params']['id']},'include':_0x13ca64})['then'](handleEntityNotFound(_0x55a5ff,null))[_0x2eb9('0x1d')](function(_0x196a3e){if(_0x196a3e&&_0x196a3e[_0x2eb9('0x62')]){var _0x36cfc7=_0x196a3e[_0x2eb9('0x66')]({'plain':!![]});fs[_0x2eb9('0x67')](_0x1c8c1b);return BPromise['each'](_0x36cfc7['Messages'],function(_0x26a968,_0x1d4b24){var _0x40cd11={'from':_0x26a968[_0x2eb9('0x63')],'to':_0x26a968['to']||'missing.recipient@your.company.com','subject':_0x26a968[_0x2eb9('0x65')],'html':htmlEntities[_0x2eb9('0x68')](_0x26a968['body']),'headers':{'Date':moment(_0x26a968['createdAt'])[_0x2eb9('0x48')](_0x2eb9('0x69'))},'attachments':[]};if(_0x26a968['cc']){_0x40cd11[_0x2eb9('0x6a')]['Cc']=_0x26a968['cc'];}if(_0x26a968[_0x2eb9('0x64')]){_0x40cd11[_0x2eb9('0x6a')][_0x2eb9('0x6b')]=_0x26a968[_0x2eb9('0x64')];}return new BPromise(function(_0x27973d,_0x2e44e7){if(_0x26a968[_0x2eb9('0x61')]){for(var _0x49ad2c=0x0;_0x49ad2c<_0x26a968[_0x2eb9('0x61')][_0x2eb9('0x4c')];_0x49ad2c++){var _0x4fde9a=_0x26a968[_0x2eb9('0x61')][_0x49ad2c];var _0x9671f8=path['join'](_0x469420,_0x4fde9a[_0x2eb9('0x6c')]);if(fs[_0x2eb9('0x6d')](_0x9671f8)){_0x40cd11[_0x2eb9('0x5e')]['push']({'name':_0x4fde9a['name'],'contentType':_0x4fde9a['type'],'data':fs[_0x2eb9('0x6e')](_0x9671f8)});}}}emlformat[_0x2eb9('0x6f')](_0x40cd11,function(_0x42f339,_0x2da053){if(_0x42f339)return _0x2e44e7(_0x42f339);fs['writeFileSync'](path[_0x2eb9('0x59')](_0x1c8c1b,util[_0x2eb9('0x48')](_0x2eb9('0x70'),_0x1d4b24)),_0x2da053);return _0x27973d(_0x2da053);});});})[_0x2eb9('0x1d')](function(){return new BPromise(function(_0x10b21e,_0x28e3cc){zipdir(_0x1c8c1b,{'saveTo':_0x5614df},function(_0x20026c,_0x5a390f){if(_0x20026c)return _0x28e3cc(_0x20026c);return _0x10b21e(_0x5a390f);});})[_0x2eb9('0x1d')](function(){return new BPromise(function(_0x370f76,_0x3aaaf7){rimraf(_0x1c8c1b,function(_0x31abfb){if(_0x31abfb)_0x3aaaf7(_0x31abfb);return _0x370f76();});});})[_0x2eb9('0x1d')](function(){return _0x55a5ff[_0x2eb9('0x57')](_0x5614df,_0x13f2c4,function(_0x34318a){if(!_0x34318a)fs[_0x2eb9('0x71')](_0x5614df);});});});}else{return _0x55a5ff[_0x2eb9('0x12')](0xc8);}})['catch'](handleError(_0x55a5ff,null));};
\ No newline at end of file